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

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

如何在JavaScript中檢查未定義或空變量?

如何在JavaScript中檢查未定義或空變量?

達(dá)令說 2019-07-13 18:46:24
我們經(jīng)常在JavaScript代碼中使用以下代碼模式if (typeof(some_variable) != 'undefined' && some_variable != null){     // Do something with some_variable}有沒有一種不那么冗長的檢查方法,具有同樣的效果?根據(jù)一些論壇和文獻(xiàn),簡單地說,以下幾點(diǎn)應(yīng)該有同樣的效果。if (some_variable){     // Do something with some_variable}不幸的是,火蟲在運(yùn)行時(shí)將此類語句計(jì)算為錯(cuò)誤。some_variable是個(gè)未知數(shù),而第一個(gè)就沒問題了。這僅僅是Firebug(不想要的)行為,還是這兩種方式之間真的有一些不同?
查看完整描述

3 回答

?
白豬掌柜的

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

你必須區(qū)分不同的情況:

  1. 變量可以是

    undefined

    未申報(bào)

    ..如果在其他上下文中訪問未聲明的變量,則會(huì)得到錯(cuò)誤

    typeof.

if(typeof someUndeclaredVar == whatever) // worksif(someUndeclaredVar) // throws error

已聲明但未初始化的變量是undefined.

let foo;if (foo) //evaluates to false because foo === undefined
  1. 未定特性,就像someExistingObj.someUndefProperty..未定義的屬性不會(huì)產(chǎn)生錯(cuò)誤,只會(huì)返回undefined,當(dāng)轉(zhuǎn)換為布爾值時(shí),計(jì)算結(jié)果為false..所以,如果你不關(guān)心0false,使用if(obj.undefProp)都沒問題?;谶@一事實(shí),有一個(gè)常見的成語:

    value = obj.prop || defaultValue

    意思是“如果obj擁有財(cái)產(chǎn)prop,分配給value,否則將分配默認(rèn)值。defautValue".

    有些人認(rèn)為這種行為令人困惑,認(rèn)為它會(huì)導(dǎo)致難以發(fā)現(xiàn)的錯(cuò)誤,并建議使用in運(yùn)算符

    value = ('prop' in obj) ? obj.prop : defaultValue


查看完整回答
反對 回復(fù) 2019-07-13
  • 3 回答
  • 0 關(guān)注
  • 575 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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