js中的call與apply用法

2021-06-07 03:39:36 字數 1194 閱讀 4096

call 方法

呼叫乙個物件的乙個方法,以另乙個物件替換當前物件。

call([thisobj[,arg1[, arg2[,   [,.argn]]]]])

引數

thisobj

可選項。將被用作當前物件的物件。

arg1, arg2,  , argn

可選項。將被傳遞方法引數序列。

說明

call 方法可以用來代替另乙個物件呼叫乙個方法。call 方法可將乙個函式的物件上下文從初始的上下文改變為由 thisobj 指定的新物件。

如果沒有提供 thisobj 引數,那麼 global 物件被用作 thisobj。

說明白一點其實就是更改物件的內部指標,即改變物件的this指向的內容。這在物件導向的js程式設計過程中有時是很有用的。

引用網上乙個**段,執行後自然就明白其道理。

<

input 

type

="text"

id="mytext"

value

="input text"

>

<

script

>

function

obj()

varvalue="

global 變數";

function

fun1()

window.fun1();   

//global 變數

fun1.call(window);  

//global 變數

fun1.call(document.getelementbyid('mytext'));  

//input text

fun1.call(

newobj());   

//物件!

script

>

執行如下**:

<

script

>

varfunc

=new

function

()var

myfunc

=function

(x)myfunc.call(func,

"var");

script

>

可見分別彈出了func和var。到這裡就對call的每個引數的意義有所了解了。

js中call與apply用法

兩者的格式和引數定義 call thisarg arg1,arg2,引數列表,arg1,arg2,上面兩個函式內部的this指標,都會被賦值為thisarg,這可實現將函式作為另外乙個物件的方法執行的目的 一 call 的簡單用法 首先,我們先看個簡單的例子 call 然後,執行結果如下 globa...

js中call與apply用法

兩者的格式和引數定義 call thisarg arg1,arg2,引數列表,arg1,arg2,上面兩個函式內部的this指標,都會被賦值為thisarg,這可實現將函式作為另外乙個物件的方法執行的目的 一 call 的簡單用法 首先,我們先看個簡單的例子 call 然後,執行結果如下 globa...

js中call與apply用法

1 2兩者的格式和引數定義 3 call thisarg arg1,arg2,引數列表,arg1,arg2,引數陣列,argarray 5上面兩個函式內部的this指標,都會被賦值為thisarg,這可實現將函式作為另外乙個物件的方法執行的目的67 一 call 的簡單用法 8首先,我們先看個簡單的...