亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

JavaScript

JavaScript中call()和apply() 的一些理解

時間:2024-09-04 14:34:02 JavaScript 我要投稿
  • 相關推薦

關于JavaScript中call()和apply() 的一些理解

  關于JavaScript中call()和apply() 的一些理解

  call()方法和apply()方法,在上層應用中用的不是很多,但在底層寫JS框架的時候卻常?吹。然后度娘谷哥一番,也發(fā)現(xiàn)好多達人寫出了自己的理解和筆記,但始終還是云里霧里,于是去W3C學習了下

  在W3C網(wǎng)上研究這兩個方法的時候,看到一個詞語,叫“對象冒充”,這個概念本人覺得還是挺重要的,讓我對這兩個方法理解起來更加直觀。

  call()方法,看下官方給出的例子

  function sayColor(sPrefix,sSuffix) { alert(sPrefix + this.color + sSuffix);};var obj = new Object();obj.color = "blue";sayColor.call(obj, "The color is ", "a very nice color indeed.");

  最后輸出的結果是“The color is blue, a very nice color indeed.”

  call()方法就是將第一個參數(shù)替換方法中的this,然后后面的參數(shù)傳入該方法使用

  apply()方法,同樣先看個官方給出的例子

  function sayColor(sPrefix,sSuffix) { alert(sPrefix + this.color + sSuffix);};var obj = new Object();obj.color = "blue";sayColor.apply(obj, new Array("The color is ", "a very nice color indeed."));

  最后輸出的結果仍然是“The color is blue, a very nice color indeed.”

  其實call()方法和apply()方法可以粗略的認為是差不多的,第一個參數(shù)都是替換方法中this關鍵字,只是后面?zhèn)鹘o方法的傳參方式不同,call是直接對應,apply是利用數(shù)組,在數(shù)組中一一對應

  

【JavaScript中call()和apply() 的一些理解】相關文章:

對項目管理的理解和認識04-10

如何調(diào)試javascript腳本呢07-19

javascript跨域訪問的方法07-19

英語閱讀理解和完形填空答題的技巧07-10

溝通技巧:與人溝通的一些技巧和方法03-12

盤點嵌入式名詞簡單的理解和定義01-30

電子電路設計的一些技巧和注意事項08-11

企業(yè)溝通中存在的問題和建議03-12

2022中考英語閱讀理解誒考前練習題11-18

健身的一些誤區(qū)09-04