一、call
1.call可以调用函数:
2.call可以改变this的指向
3.call可以传参 :
(1).只传一个参数(a),那么a是this改变后的指向的对象: function.call(a)
(2).传两个参数(a,b),a是this改变后的指向的对象,b是你要传的参数,(call传的参数传到哪?传到调用call的那个函数上):function.call(a,b)
(3).传多个参数(a,b,c),a是this改变后的指向的对象,b和c是你要传的参数
二、apply
apply和call都可以调用函数,有什么区别?---传参不一样;
apply传递参数要以数组的形式进行传参:function.apply(a,[b,c]他的效果和function.call(a,b,c)完全相同
三、bind
bind和call的传参方式完全相同,那么有什么区别?---bind不会调用函数,而是作为一个返回值返回一个函数,然后再调用这个函数。