function.call(thisArg[, argument1[, argument2[, ...]]]);因此,如果您正在使用JavaScript中的參數對象,則可以使用應用方法調用任何函數,然後只需將現有參數對像作為數組參數傳遞。 希望這對您有用!
function.apply(thisArg[, argumentArray]);sudhamshu的功能圖像。你能弄清楚意義嗎? > >在JavaScript中適用於功能調用和功能的常見問題(常見問題解答)
} > call()和apply()和apply()之間的選擇取決於您要如何將參數傳遞給該函數。如果您有一個參數列表,並且您不提前知道其號碼,則Apply()可能會更方便,因為它需要數組。如果您知道參數的數量,或者根本沒有參數,則可以更簡單地使用call()。但是,在使用Apply()與期望多個參數的構造函數函數一起使用時,您需要小心。由於Apply()需要一個參數,因此您需要確保數組包含正確數量的元素。 我可以使用函數呼叫和函數與箭頭函數應用嗎? > > >
console.log(add.call(add.call(null,1,2)); //輸出:3
並使用apply()方法,它看起來像這樣:
返回a b;
}
}
console.log(add.apply(null,[1,2])); //輸出:3
在兩種情況下,我們都將添加函數調用為null的“ this”設置(因為它在此函數中不使用),並以1和2作為參數傳遞。>我何時應該使用函數呼叫而不是函數應用,反之亦然?
>在函數呼叫和函數應用中應用的“此”值是什麼?這使您可以控制執行函數的上下文。如果您將null或不確定為第一個參數,則該函數將在全局上下文中執行(或在嚴格模式下未定義)。
>
我可以使用內置的javascript函數使用函數呼叫和函數嗎?
是的,是的,您可以使用call()和內置的javascript functions使用call()和應用程序。當您想使用具有不同類型的對像上的一個對像類型上存在的方法時,這可能是有用的。 >
如果您傳遞了太多參數以呼叫()或應用(),那麼額外的參數將被簡單地忽略。如果您的參數太少,則缺少參數將設置為未定義。
以上是function.call和function.ply的差異是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!