Es6 call(),apply(),bind()

call apply bind总结

相同点:都可以改变函数内部的this指向

区别点:

1.call和apply会调用函数,并且改变函数内部this指向

2.call和apply传递的参数不一样,call传递参数aru1,aru2...形式 apply必须是数组形式

3.bind不会调用函数,可以改变函数内部this指向

主要应用场景

1.call经常做继承

2.apply经常跟数组又关系,比如借助于数学对象实现数组最大值最小值

3.bind不调用函数,但是还想改变this指向,比如改变定时器内部的this指向

 

 

    

    

    

你可能感兴趣的:(javascript,es6)