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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問在b函數里的alert(this.value)為什么彈出的是unfinished?

請問在b函數里的alert(this.value)為什么彈出的是unfinished?

桃花長相依 2022-07-25 18:14:25
<input type=button value=tijiaao onclick="a()"> function a(){b()} function b(){alert(this.value)}1這是一個javascript問題:在b函數里的alert(this.value)為什么彈出的是unfinished,而不是tijiao,還有a函數調用b()函數,b函數里的this指向誰,是window對象還是還是調用a函數的對象,為什么?
查看完整描述

2 回答

?
小唯快跑啊

TA貢獻1863條經驗 獲得超2個贊

那個unfinished是undefined吧。
<onclick=“”> 這個雙引號里面的closure是誰我還真沒想過,不過我記得如果這么寫的話this是那個input <input ... onclick="alert(this)">,根據這樣,估計可以可以這么理解
button.onclick= function() {

a();
}
然后b里面的this是window
如果你這么寫a
function a() {
this.b();
}
那么b里面的this就是那個input了。
沒指定誰“點”b函數,就是windows.b()。
這是javascript里比較迷惑的地方,javascript并沒有明確的類的定義,用函數模擬類只不過是借用了其中閉包的概念。
不好意思,這里雖然我自己理解了,但是有些術語我也不知道怎么說。


查看完整回答
反對 回復 2022-08-01
?
LEATH

TA貢獻1936條經驗 獲得超7個贊

onclick="a()"相當于:
假設btn是input這個對象
btn.onclick=a;
當點擊的時候,實際上是掉用的btn.onclick(),所以這個函數調用是有this指針的,指向btn這個對象
在javascript里面直接調用一個函數的時候,就是前面沒有點,都認為this是window

查看完整回答
反對 回復 2022-08-01
  • 2 回答
  • 0 關注
  • 91 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號