你不知道的 JavaScript 系列中( 25 ) - toBoolean
阿新 • • 發佈:2020-11-18
假值
以下是假值:Boolean(undefined); // false Boolean(null); // false Boolean(0); // false Boolean(NaN); // false Boolean(""); // false假值的布林強制型別轉換結果為 false。 從邏輯上說,假值列表以外的都應該是真值。但 JavaScript 規範對此並沒有明確定義,只是給出了一些示例,例如規定所有的物件都是真值,我們可以理解為假值列表以外的值都是真值
假值物件
var a = new Boolean(false); var b = new Number(0); var c = newd 為 true,說明 a、b、c 都為 true。 a,b,c都是假值物件 假值物件看起來和普通物件並無二致(都有屬性,等等),但將它們強制型別轉換為布林 值時結果為 falseString(""); var d = Boolean(a && b && c); console.log(d); // true
a == false; // true b == false; // true c == false; // true
真值
var a = []; var b = {}; var c = function(){}; var d = Boolean(a && b && c); console.log(d)d 依然是 true。還是同樣的道理,[]、{} 和 function(){} 都不在假值列表中,因此它們都 是真值// true