//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);//寫法二