jQuery源碼解讀二(apply和call)

1、apply方法和call方法的用法:數組

  • apply方法:

    語法:apply(thisObj,[,argArray])app

    定義:應用某一對象的一個方法,用另外一個對象替換當前對象。函數

    說明:若是argArray不是一個有效的數組或者不是arguments對象,那麼將致使一個TypeError;若是沒有提供argArray和thisObj任何一個參數,那麼Global對象將被用做thisObj,而且沒法被傳遞任何參數。this

  • call方法:

    語法:call(thisObj[,arg1[,arg2[,...[,argN]]]])對象

    定義:調用一個對象的一個方法,以另外一個對象替換當前對象io

    說明:call方法能夠用來替代另外一個對象調用一個方法。call方法可將一個函數的對象上下文從初始的上下文改變爲由thisObj指定的新對象。若是沒有提供thisObj參數,那麼Global對象被用做thisObj。function

 

call和apply方法都可以用對象B替換對象A,執行對象A的某個方法,傳參的方式不同。對象A.function.call(對象B,"arg")  VS  對象A.function.apply(對象B,['arg'])語法

相關文章
相關標籤/搜索