javaScript 中Boolean類型的一些理解

在js中,任何數據類型都可轉換成Boolean類型,所以理論上任何數據類型都可以放在if條件判斷中。衆所周知,js對於非Boolean類型的真假判斷比較模糊,當然也可以通過Boolean()函數顯示判斷當前數據類型的布爾值,比如:

var str = "Hello";
console.log(Boolean(str)); // output: true.

以下對於各非Boolean類型轉成布爾值做個總結:

數據類型 轉換爲true值 轉換爲false值
Boolean true false
String 任何非空字符串 ”“(空字符串)
Number 任何非零數字值(包括無窮大Infinity 0和NaN
Object 任何對象 null(空對象指針)
Undefined n/a或N/A undefined

有一點需要補充的是NaN這個比較特殊,他跟任何數據都不想等包括自己,如:
console.log(NaN==NaN); // output: false

參考:
js紅寶書 3.4.4 小節。

發佈了35 篇原創文章 · 獲贊 51 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章