高频时间触发,但n秒内只会执行一次,所以节流会稀释函数的执行频率。

    1. const throttle = (fn, time) => {
    2. let flag = true;
    3. return function() {
    4. if (!flag) return;
    5. flag = false;
    6. setTimeout(() => {
    7. fn.apply(this, arguments);
    8. flag = true;
    9. }, time);
    10. }
    11. }

    节流常应用于鼠标不断点击触发、监听滚动事件