call,apply,bind的区别
共同点:第一个参数都是改变this的指向
不同点:
call 方法可以以aru1,aru2形式传入多个参数,经常用于继承
apply 方法必须以数组形式传入参数 ,跟数组有关系,比如借用数学对像求最大值和最小值

bind,只改变this指向不调用函数,可以传入多个参数,如果一个函数体里既有自己的this,又有全局的this,可以fn().bind(null,this),就不改变当前的this指向,将全局的this以参数的形式传入,这样自己的this和全局的this都能够使用
经常用于需要改变函数内部指向又不立即执行的函数,比如改变定时器内部的指向

浙公网安备 33010602011771号