js中油门函数的问题

Problems in throttle function in js

下面的 'throttle' 代码运行良好。但我的问题是为什么我们在 throttle 函数中使用 'this' 关键字。 它究竟是什么? 请描述一下。 非常感谢

    $("document").ready(function(){
    $("input").keypress(throttle(function(e){
      $(".div1").html($("#ip").val());
    },1000))

  function throttle(fn,dly){
    var timer=null;
    return function(){
      clearTimeout(timer);
      timer=setTimeout(function(){
        fn.apply(this,arguments);
      },dly);
    }
  }
});

fn 是一个函数。您可以以标准方式调用函数 - fn() 或者您可以调用 call 方法或 apply 方法。

当调用 callapply 时,您可以选择第一个参数来设置可以调用函数的范围。范围也可以设置为 null没有范围。