//call apply bind 相同点this指向发生改变
var obj1={
name:"obj1",
sayhello:function(){
console.log(this);
},
add:function(x,y){
console.log(x+y);
}
};
var obj2={
name:"obj2",
};
//不同点
obj1.add.call(obj2,1,2); //传的是参数列表
obj1.add.apply(obj2,[1,2]);//传的是数组
obj1.add.bind(obj2,1,2)();//写法一 bind加()才会被调用
obj1.add.bind(obj2)(1,2);//写法二
call apply bind区分
最新推荐文章于 2024-10-11 08:30:00 发布