call
**1'use strict';
function test(xx,yy)
let a = {};
// 呼叫test方法, 將 a 放到方法裡當作 this。 所以裡列印a才會有值的。
test.call(a,10,20);
console.log(a); //
**3'use strict';
function test(xx,yy)
let a = {};
// 和 call 一樣, 只不過是引數的形式變了, 這個用陣列來傳入, call是單個傳入。
console.log(a);//
bind
function test(xx,yy)
let a = {};
let b = test.bind(a,10,20);
// 實際上應該是返回了乙個函式物件
b();
console.log(a);//
執行了b(), a才會發生變化, 如果不執行b();a是不會有變化的。
call, apply, bind方法詳解
function a x,y var c a.call c,5,6 5 6 arguments 5,6 再看例子 function person age,male var person1 person.call person1,20,female person1 var person var per...
call apply bind方法詳解
var name window var newthis function showname info1,info2 showname a b 輸出 window a b 通過bind改變this指向 var newshowname showname.bind newthis,hello world ...
call apply bind方法及其應用
1 call 方法可以呼叫乙個函式 functionfn fn.call window2 call 方法可以改變函式的this指向 var o function fn x,y 利用call方法後this指向了o這個物件 fn.call o,1,2 call方法總結 var o function fn...