call方法:
語(yǔ)法:call([thisObj[,arg1[, arg2[, [,.argN]]]]])
定義:調(diào)用一個(gè)對(duì)象的一個(gè)方法涎显,以另一個(gè)對(duì)象替換當(dāng)前對(duì)象挚瘟。
說(shuō)明:
call 方法可以用來(lái)代替另一個(gè)對(duì)象調(diào)用一個(gè)方法叹谁。call 方法可將一個(gè)函數(shù)的對(duì)象上下文從初始的上下文改變?yōu)橛?thisObj 指定的新對(duì)象。
如果沒(méi)有提供 thisObj 參數(shù)乘盖,那么 Global 對(duì)象被用作 thisObj焰檩。
apply方法:
語(yǔ)法:apply([thisObj[,argArray]])
定義:應(yīng)用某一對(duì)象的一個(gè)方法,用另一個(gè)對(duì)象替換當(dāng)前對(duì)象订框。
說(shuō)明:
如果 argArray 不是一個(gè)有效的數(shù)組或者不是 arguments 對(duì)象析苫,那么將導(dǎo)致一個(gè) TypeError。
如果沒(méi)有提供 argArray 和 thisObj 任何一個(gè)參數(shù)穿扳,那么 Global 對(duì)象將被用作 thisObj藤违, 并且無(wú)法被傳遞任何參數(shù)。
通俗理解:
call不有撥打電話的意思嗎纵揍,可以這么想顿乒,父親對(duì)象call給孩子打電話,打電話的時(shí)候就會(huì)把父對(duì)象的屬性和方法傳過(guò)去泽谨,打電話打過(guò)去了璧榄,同時(shí)修改了this的指向特漩,子元素就擁有了父元素的方法,添加到了子元素中骨杂。