JavaScript中的假值歸納
阿新 • • 發佈:2019-01-08
在公司實習一段時間,過程中,發現有很多時候在if()判斷語句時,總是出現真假值判斷錯誤的情況。所以特意想總結一下JavaScript中的一些真假值,讓自己以後能更快速的判斷。
在JavaScript中,所有的值都能轉換成真值(truthy)
和假值(falsy)
中的一種.
所以我們只要記住所有的假值,那麼剩下的就是真值。
列出我總結的假值:
0, +0, -0, null, undefined, NaN, ""(長度為零的字串),false
.
特別注意一下:[],{}," "
都是真值。
當[]需要進行if判斷時,可以通過陣列長度進行判斷。
當{}需要進行if判斷時,可以通過JSON.stringfy()進行判斷。
let arr = [];
if(arr.length === 0){
console.log(1);
}else{
console.log(2);
}
let obj = {};
if(JSON.stringify(obj) === "{}"){
console.log(1);
}else{
console.log(2);
}
假值在使用+
前置時的表現情形:
console.log(+false, +null, +"", +0, +undefined, +NaN);
//0 0 0 0 NaN NaN
一點建議:
永遠主動使用===
進行相等判斷;當情況特殊,不得已時才使用==