call() apply() bind() 都是用来更改 this 的指向的
其中bind() 返回的是一个函数,必须执行才行
传参差异:
-
call 、bind 、 apply
这三个函数的第一个参数都是this
的指向对象,第二个参数差别就来了: -
call
的参数是直接放进去的,第二第三第n
个参数全都用逗号分隔,直接放到后面obj.myFun.call(db,‘成都‘, ... ,‘string‘ );
-
apply
的所有参数都必须放在一个数组里面传进去obj.myFun.apply(db,[‘成都‘, ..., ‘string‘ ]);
-
bind
除了返回是函数以外,它 的参数和call
一样。