JavaScript中奇葩的假值示例應(yīng)用
更新時(shí)間:2014年03月11日 16:32:18 作者:
這篇文章主要介紹了JavaScript中奇葩的假值應(yīng)用,需要的朋友可以參考下
通常在以下語句結(jié)構(gòu)中需要判斷真假
if分支語句
while循環(huán)語句
for里的第二個(gè)語句
如
if (boo) {
// do something
}
while (boo) {
// do something
}
JavaScript中有6個(gè)值為“假”,這六個(gè)值是
false
null
undefined
0
'' (空字符串)
NaN
這里面false本身是布爾類型,其它5個(gè)則不是。
除了這6個(gè)外,其它均為“真” ,包括對象、數(shù)組、正則、函數(shù)等。注意 '0'、'null'、'false'、{}、[]也都是真值 。
雖然這六個(gè)值都為“假”,它們之間并非都相等
console.log( false == null ) // false
console.log( false == undefined ) // false
console.log( false == 0 ) // true
console.log( false == '' ) // true
console.log( false == NaN ) // false
console.log( null == undefined ) // true
console.log( null == 0 ) // false
console.log( null == '' ) // false
console.log( null == NaN ) // false
console.log( undefined == 0) // false
console.log( undefined == '') // false
console.log( undefined == NaN) // false
console.log( 0 == '' ) // true
console.log( 0 == NaN ) // false
對于“==”,以上得出下列結(jié)論
false 除了和自身比較為true外,和0,'' 也為true
null只和undefined比較時(shí)為true, 反過來undefined也僅和null比較為true,沒有第二個(gè)
0除了和false比較為true,還有一個(gè)空字符串 ''
空字符串''出了和false比較為true,還有一個(gè)數(shù)字0
if分支語句
while循環(huán)語句
for里的第二個(gè)語句
如
復(fù)制代碼 代碼如下:
if (boo) {
// do something
}
while (boo) {
// do something
}
JavaScript中有6個(gè)值為“假”,這六個(gè)值是
false
null
undefined
0
'' (空字符串)
NaN
這里面false本身是布爾類型,其它5個(gè)則不是。
除了這6個(gè)外,其它均為“真” ,包括對象、數(shù)組、正則、函數(shù)等。注意 '0'、'null'、'false'、{}、[]也都是真值 。
雖然這六個(gè)值都為“假”,它們之間并非都相等
復(fù)制代碼 代碼如下:
console.log( false == null ) // false
console.log( false == undefined ) // false
console.log( false == 0 ) // true
console.log( false == '' ) // true
console.log( false == NaN ) // false
console.log( null == undefined ) // true
console.log( null == 0 ) // false
console.log( null == '' ) // false
console.log( null == NaN ) // false
console.log( undefined == 0) // false
console.log( undefined == '') // false
console.log( undefined == NaN) // false
console.log( 0 == '' ) // true
console.log( 0 == NaN ) // false
對于“==”,以上得出下列結(jié)論
false 除了和自身比較為true外,和0,'' 也為true
null只和undefined比較時(shí)為true, 反過來undefined也僅和null比較為true,沒有第二個(gè)
0除了和false比較為true,還有一個(gè)空字符串 ''
空字符串''出了和false比較為true,還有一個(gè)數(shù)字0
相關(guān)文章
實(shí)例學(xué)習(xí)JavaScript讀取和寫入cookie
本篇內(nèi)容主要給大家通過實(shí)例講述了JavaScript讀取和寫入cookie的相關(guān)知識點(diǎn),有這方面需要的朋友參考下吧。2018-01-01

javascript設(shè)置和獲取cookie的方法實(shí)例詳解
這篇文章主要介紹了javascript設(shè)置和獲取cookie的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析總結(jié)了JavaScript操作cookie簡單實(shí)現(xiàn)數(shù)據(jù)存儲與讀取的相關(guān)技巧,需要的朋友可以參考下
2016-01-01 
JS對大量數(shù)據(jù)進(jìn)行多重過濾的方法
今天在工作中遇到一個(gè)問題,當(dāng)前端通過Ajax從后端取得了大量的數(shù)據(jù),需要根據(jù)一些條件過濾,但是發(fā)現(xiàn)寫的過濾方法有問題,后來仔細(xì)的查找問題,通過網(wǎng)上的資料終于解決了這個(gè)問題,現(xiàn)在將解決的過程以及解決方法分享給大家,有需要的朋友們可以參考借鑒。
2016-11-11 
Egg Vue SSR 服務(wù)端渲染數(shù)據(jù)請求與asyncData
這篇文章主要介紹了Egg Vue SSR 服務(wù)端渲染數(shù)據(jù)請求與asyncData,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
2019-11-11 
如何判斷Javascript對象是否存在的簡單實(shí)例
下面小編就為大家?guī)硪黄绾闻袛郕avascript對象是否存在的簡單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
2016-05-05