猿问

js debounce函数有什么作用?这个函数有点看不懂,求解释?

我如果把debounce函数去掉的话也是可以执行的?debounce函数在这里起了什么作用?
其中的变量immediate和timeout起到了什么作用,最好能通俗的解释下这个函数执行过程

    function debounce(func, wait = 20, immediate = true) {      var timeout;      return function() {        
    var context = this, args = arguments;        var later = function() {
          timeout = null;          if (!immediate) func.apply(context, args);
        };        var callNow = immediate && !timeout;
        clearTimeout(timeout);
        timeout = setTimeout(later, wait);        if (callNow) func.apply(context, args);
      };
    };



慕勒3428872
浏览 444回答 1
1回答

慕工程0101907

防抖动,详细可以参考下面两个链接:函数防抖与节流实例解析防抖动(Debouncing)和节流阀(Throttling)要学会善用搜索引擎。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答