call apply bind总结

212 阅读1分钟
相同点:

都可以改变函数内部的this指向

区别点:
  1. call和 apply 会调用函数,并且改变函数内部this指向
  2. call 和 apply 传递的参数不一样,call传递参数aru1., aru2... 形式 apply 必须数组形式[arg]
  3. bind不会调用函数,可以改变函数内部this指向
主要应用常见:
  1. call经常做继承
  2. apply 经常跟数组有关系。比如借助于数学对象实现是最大值最小值
  3. bind 不调用函数,但是还想改变this指向。比如改变定时器内部的this指向