第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

使用JavaScript原型對(duì)象時(shí),事件方法中的“ this”關(guān)鍵字

使用JavaScript原型對(duì)象時(shí),事件方法中的“ this”關(guān)鍵字

守候你守候我 2019-10-21 14:45:22
我正在嘗試在事件處理程序中訪問JavaScript中原型類的成員變量-我通常會(huì)使用“ this”關(guān)鍵字(對(duì)于事件處理程序,通常使用“ this”關(guān)鍵字) 。不用說,我遇到了一些麻煩。以下面的HTML代碼段為例:<a id="myLink" href="#">My Link</a>這段JavaScript代碼:function MyClass(){  this.field = "value"  this.link = document.getElementById("myLink");  this.link.onclick = this.EventMethod;}MyClass.prototype.NormalMethod = function(){  alert(this.field);}MyClass.prototype.EventMethod = function(e){  alert(this.field);}實(shí)例化MyClass對(duì)象并調(diào)用NormalMethod的工作方式與我期望的完全相同(提示說“ value”),但是單擊鏈接會(huì)產(chǎn)生未定義的值,因?yàn)椤?this”關(guān)鍵字現(xiàn)在引用了事件目標(biāo)(anchor()HTML元素) 。我是原型JavaScript樣式的新手,但是在過去,通過閉包,我只是在構(gòu)造函數(shù)中復(fù)制了“ this”:var that = this;然后,我可以通過“那個(gè)”對(duì)象訪問事件方法中的成員變量。這似乎不適用于原型代碼。還有另一種方法可以做到這一點(diǎn)嗎?謝謝。
查看完整描述

3 回答

?
Cats萌萌

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個(gè)贊

如上所述,使用作為原型庫一部分的bind是解決此問題的一種干凈方法。這個(gè)問題是另一個(gè)SO問題的重復(fù),這里通過實(shí)現(xiàn)bind方法來回答這個(gè)問題,但不包括整個(gè)原型庫:



查看完整回答
反對(duì) 回復(fù) 2019-10-21
  • 3 回答
  • 0 關(guān)注
  • 552 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)