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