let obj={
name:'zsf',
fun:function(school,age){
console.log(this.name,school,age)
}
}
let obj2={
name='xjg'
}
相同点
都是能够改变this指向
call
obj.fun.call(obj2,'isu',18)
apply
obj.fun.apply(obj2,['isu',18])
bind
obj.fun.bind(obj2)('isu',18)
区别
call和apply就是传递参数的方式不同。一个是按序,一个是放在数组里面。
bind与call apply 不同的地方在于,它返回的是一个函数,必须再次调用。