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

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

JavaScript的一個不能理解的地方

JavaScript的一個不能理解的地方

慕斯709654 2018-11-21 13:13:26
最近在學(xué)JavaScript(NodeJs)在用for遍歷一個JsonArray的時候發(fā)現(xiàn)了一個問題我當(dāng)時是這樣子寫的:按道理來說這樣寫應(yīng)該是錯的,應(yīng)該要判斷是不是為Null,但是我運行了一下,居然成功了,沒有報錯,輸出也正常黑人問號臉...求告知這是什么原理...難道obj2=obj1.result[i]會返回一個boolean??之前學(xué)過JAVA,感覺JavaScript相對JAVA有點不嚴(yán)謹(jǐn),思想有點被禁錮...
查看完整描述

1 回答

?
弒天下

TA貢獻(xiàn)1818條經(jīng)驗 獲得超8個贊

賦值表達(dá)式會返回所賦的值。也就是說obj2=obj1.result[i]會返回obj1.result[i]。

js是動態(tài)語言,它有隱私轉(zhuǎn)換的特性,就是在該需要用到某種數(shù)據(jù)類型的時候,它會通過預(yù)先的規(guī)則來將傳進(jìn)來的值轉(zhuǎn)換成特定的類型。

那么在剛剛賦值表達(dá)式obj2=obj1.result[i]中返回值是obj1.result[i],那js引擎就會對obj1.result[i]進(jìn)行類型轉(zhuǎn)換成Boolean類型。

如果你obj1.result[i]的值是除NaN,0,undefined,null,''之外的其他值,都會轉(zhuǎn)換成true,否則則是false。


查看完整回答
反對 回復(fù) 2018-12-12
  • 1 回答
  • 0 關(guān)注
  • 598 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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