JS中apply和call的區別

2021-06-27 09:58:37 字數 656 閱讀 8529

聯絡:

obj:這個物件將代替***function類裡this物件,也即***function類(函式)裡的this不在是指 ***function 本身,而是obj;

args:這個是陣列型別的引數,它將作為引數傳給function(args --> arguments)

結果是還是執行 ***function 類方法(函式)的功能,只不過該 ***function 函式以另乙個目標物件和乙個陣列作為引數傳遞進 ***function 函式,***function函式裡面的 this 是傳進的目標物件,二不是 ***function 本身;

***function.call(obj,[param1[,param2[,...[,paramn]]]])

params:這個是乙個引數列表(即逗號隔開的零個或多個引數),不是陣列;

結果是還是執行 ***function 類方法(函式)的功能,只不過該 ***function 函式以另乙個目標物件和乙個引數列表[即用逗號隔開的零或多個引數]作為引數傳遞進 ***function 函式,***function函式裡面的 this 是傳進的目標物件,二不是 ***function 本身;

js中call和apply用法

1 方法定義 call方法 語法 call thisobj arg1 arg2 argn 定義 呼叫乙個物件的乙個方法,以另乙個物件替換當前物件。說明 call 方法可以用來代替另乙個物件呼叫乙個方法。call 方法可將乙個函式的物件上下文從初始的上下文改變為由 thisobj 指定的新物件。如果沒...

js中的apply和call函式

主要我是要解決一下幾個問題 obj 這個物件將代替function類裡this物件 args 這個是陣列,它將作為引數傳給function args arguments function.call obj,param1 param2 paramn obj 這個物件將代替function類裡this物...

JS中Apply和Call的用法

1 函式層面 obj.call obj1,argument1,argument2,這兩個函式都是使用obj物件來替換obj1來執行對應的函式 這個可用於物件的繼承 例如 function add a,b function sub a,b add.call sub,a,b 使用add函式來替代sub進...