布林值(Boolean)只有兩個值:true
與 false
。
var x = true;
var y = false;
布林值常用在「如果某個條件成立,就做某件事情」的場合,通常會搭配 if
判斷式。
布林數值的轉型分為兩種方式:
直接使用 Boolean()
函式,將其他型別轉換成布林值。
Boolean(2) // 明確轉型
透過邏輯運算子或條件判斷語句觸發布林轉換。
!!2 // 邏輯運算子觸發
if ('yeah') { ... } // if 或 while 等陳述式條件區塊
Boolean 值轉型的結果為 true
(Truthy Value)或 false
(Falsy Value)。
Boolean('') // false
Boolean(0) // false
Boolean(-0) // false
Boolean(NaN) // false
Boolean(null) // false
Boolean(undefined) // false
Boolean(false) // false
Boolean("some string") // true
Boolean({}) // true
Boolean(function() {}) // true
Boolean([]) // true
'false'
(空字串以外的字串)[]
(空陣列){}
(空物件)function(){}
(空函式)0
NaN
""
(空字串)false
null
undefined
使用反向運算子 !
,可以將其他型別數值轉換成布林值;而兩次的反向運算子 !!
則能夠得到原來數值所對應的正向布林值。
var someString = "bla bla bla";
var emptyString = "";
var zero = 0;
!!someString; // true
!!emptyString; // false
!!zero; // false