Boolean类型是ECMAscript中使用最多的一种类型,该类型只有两个字面值:true和false。不过我们要注意,这里的true和false是区分大小写的,True和Flase都不是Boolean值,只是标识符。
虽然Boolean类型的字面值只有两个,但ECMAscript中所有类型的值都有与这个两个Boolean值等价的值。要将一个值转换为其对应的Boolean值,可以调用转型函数Boolean(),如下所示:
var name = 'jack';
var nameBoolean = Boolean(name);
在这个例子中,字符串name被转换成了一个Boolean值。可以对任何数据类型调用Boolean ()函数,而且总会返回一个Boolean值。至于返回的是true还是false,取决与要转换的数据类型及实际的值。下面是具体的转换规则:
数据类型 转换为true的值 转换为false的值
Boolean true false
String 任何非空的字符串 ''空字符串
Number 任何非零数字值(包括无穷大) 0和NaN
Object 任何对象 null
Undefined 无 undefined