二十五岁时我们都一样愚蠢、多愁善感,喜欢故弄玄虚,可如果不那样的话,五十岁时也就不会如此明智。
标题:JavaScript布尔
一个JavaScript Boolean类型代表一个值:true或false.
Boolean 值
很多时候,在编程中,你需要一个只能有两个值的数据类型,像:
- YES / NO
- ON / OFF
- TRUE / FALSE
为此,JavaScript有布尔数据类型。它只能取值为真或假.
Boolean() 函数
你能使用 Boolean() 函数来查找表达式(或变量)是否为真:
Boolean(10 > 9) // returns true或者更容易的:
(10 > 9) // also returns true 10 > 9 // also returns true
比较和条件
本章概述了JS比较全面的比较运算符.
本章概述了JS比较全面的条件语句.
以下是一些例子:
操作符 描述 实例 == 等于 if (day == "Monday") > 大于 if (salary > 9000) < 小于 if (age < 18) 一个表达式的布尔值为JavaScript比较条件的基础.
有“真实”价值的一切都是真的
100 3.14 -15 "Hello" "false" 7 + 1 + 3.14 5 < 6
没有“真实”的一切都是假的
布尔值 0 是 false:
var x = 0; Boolean(x); // returns false布尔值 -0 是 false:
var x = -0; Boolean(x); // returns false空字符串""是 false::
var x; Boolean(x); // returns falsenull的布尔值是 false:
var x = null; Boolean(x); // returns falsefalse 的布尔值是false:
var x = false; Boolean(x); // returns falseNaN 的布尔值是 false:
var x = 10 / "H"; Boolean(x); // returns false
布尔值可以是对象
通常JavaScript使用布尔的字面量创建: var x = false
但布尔值,也可以使用new关键字创建新对象: var y = new Boolean(false)
var x = false; var y = new Boolean(false); // typeof x returns boolean // typeof y returns object不要创建布尔对象。它减慢执行速度。new关键字使代码复杂化。这会产生一些意想不到的结果:
当使用= =运算符,相等的布尔值是相等的:
var x = false; var y = new Boolean(false); // (x == y) is true because x and y have equal values当使用===运算符,相等的布尔值不相等,因为===运算符将比较类型和值。
var x = false; var y = new Boolean(false); // (x === y) is false because x and y have different types甚至更糟。对象不能比较:
var x = new Boolean(false); var y = new Boolean(false); // (x == y) is false because objects cannot be compared比较两个JavaScript对象将始终返回false。
完整的布尔参考
完整的布尔参考, 请参考 完整的布尔参考.
参考包含了所有布尔属性和方法的说明和示例。