原文:再次理解js中的call函數

a.call b 網上說明的版本比較多。有的說,是指針替換。有說,將a對象的方法加在b對象執行。官方說:什么對象替換什么對象。反正看了幾個版本,盡管有具體的實例,看了我三次都沒看懂它的具體含義。看過還是雲里霧里的。后來發現,結合實驗去理解非常好。 其實,換成自己能夠接受的方式理解為好。a對象的方法應用到b對象上 函數apply的意思正好說明符合這樣理解:a對象應用到b對象上去 a對象既然添加到b對 ...

2016-07-01 10:56 0 1896 推薦指數:

查看詳情

[前端] jscall方法的理解和思考

最近接手前端的工作,對當前項目中自制的js框架下,js的使用產生了非常多的困惑.尤其是js的類,對象,函數,this等等相互之間的關系和轉換,以前學過也忘得差不多了,現在基本相當於重新看. js函數有可以有好幾種解釋,普通函數,類,一個對象.三個關系都是可以看成是共存 ...

Wed Oct 23 02:08:00 CST 2019 0 456
快速理解jscall,apply的作用

今天被人問到jscall,apply的區別和用途,解釋了一番后,想到之前在逼乎上看到一位小伙伴生動形象的解釋 本身不難理解,看下MDN就知道了,但是不常用,遇到了,還要腦回路回轉下。或者時間長了,還是要確定下去看下文檔,為了方便記憶: 貓吃魚,狗吃肉,奧特曼打小怪獸。 有天狗 ...

Thu Jan 10 20:43:00 CST 2019 0 1802
JS call 和 apply 的理解和使用

本文受到了知乎問題 如何理解和熟練運用jscall及apply? 的啟發。 obj.call(thisObj, arg1, arg2, ...); obj.apply(thisObj, [arg1, arg2, ...]); 作用:將 obj (即this) 綁定到 thisObj ...

Fri Apr 14 22:39:00 CST 2017 0 1354
如何理解和熟練運用jscall及apply?

call和apply 兩者作用一致,都是把obj(即this)綁定到thisObj,這時候thisObj具備了obj的屬性和方法。或者說thisObj『繼承』了obj的屬性和方法。綁定后會立即執行函數。 唯一區別是apply接受的是數組參數,call接受的是連續參數。 我們在控制台 ...

Tue Feb 21 05:18:00 CST 2017 2 6561
js函數的apply()、call()、bind()方法

ECMAScript函數是對象,因此函數也有屬性和方法。每個函數都包含兩個屬性:length和prototype,且每個函數包含兩個非繼承而來的方法apply()和call()。這兩個方法的用途都是在特定的作用域中調用函數,實際上等於設置函數體內thiis對象的值。 apply ...

Sat Apr 01 21:28:00 CST 2017 1 1482
Animal.call(this, name);到底是什么?(理解JS的繼承)

前言 在學習繼承相關的知識點時,遇到了一個問題。 下面這段代碼的Animal.call(this, name);是什么意思?為什么它就表示繼承到了父類Animal的屬性呢? 后來回顧了new操作符的知識點,這才豁然開朗。 一、了解new操作符 通過構造模式來創建對象的關鍵一步 ...

Sun May 03 19:30:00 CST 2020 0 665
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM