在滚动上下文中不可理解的去盎司函数

atmip9wb  于 2021-09-23  发布在  Java
关注(0)|答案(0)|浏览(187)

关闭。这个问题需要详细或明确。它目前不接受答案。
**想改进这个问题吗?**编辑这篇文章,添加细节并澄清问题。

两天前关门了。
改进这个问题
我试图分解debounce函数,因为它与这个github url的代码库有关。我似乎不明白这一点,因为这让我对刚刚获得的知识感到困惑。我是个新手,所以看起来很混乱
github url:https://github.com/sholanke/no-dey-beg/blob/master/js/debouncer.js
js代码

function debouncer(fn, DEBOUNCER_TIME_OUT) {
  let timeOut;
  let alreadyRanOnUpdate = false;

  function setAlreadyRanOnUpdate(bool) {
    alreadyRanOnUpdate = bool;
  }

  const fnCaller = (args) => {
    clearTimeout(timeOut);

    !alreadyRanOnUpdate && fn(args);

    setAlreadyRanOnUpdate(true);

    timeOut = setTimeout(() => {
      setAlreadyRanOnUpdate(false);
    }, DEBOUNCER_TIME_OUT);
  };

  return fnCaller;
}

代码

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题