欢迎光临
我会一直在努力

数据类型之Boolean

Boolean类型是ECMAScript中使用的最多的一种类型,该类型只有两个字面值:ture和false。这两个值与数字值不是一回事,因此true不一定等于1,而false也不一定等于0.例如:

var found = true;
var lost = false;

需要注意的是Boolean类型的字面值true和false是区分大小写的。也就是说True和False都不是Boolean值,只是标识符。

虽然Boolean类型的字面值只有两个,但ECMAScript中所有的类型的值都与这两个Boolean值是等价的值。要将一个值转换为其对应的的Boolean值,可以调用转型函数Boolean(),如下所示:

var message = "hello world!";
var messageAsBoolean = boolean(message);

这个例子中,字符串message被转换成了一个Boolean值,该值被保存在messageAsBoolean变量中。可以对任何数据类型的值调用Boolean()函数,而且总会返回一个Boolean值,至于返回的这个值是true还是false,取决于要转换的数据类型及其实际值。附各种数据类型及其对应的转换规则。

//数据类型         转换为true的值        转换为false的值
Boolean            true                        false
------------------------------------------------------------------
String               任何非空字符串         ""(空字符串)
------------------------------------------------------------------
Number            任何非0数字值          0和NaN
------------------------------------------------------------------
Object               任何对象                    null
------------------------------------------------------------------
Undefined           n/a                          undefined
------------------------------------------------------------------

这些转换规则对理解流程控制语句(如if语句)自动执行相应的Boolean转换非常重要。如下:

var message = "hello world!";
if (message){
    alert("Value is true");
}
// Value is true

运行这个实例,就会显示一个警告框,因为字符串message被自动转换成了对应的Boolean值(true)。由于存在这种自动执行的Boolean转换,因此确切的知道了流程控制语句中使用的是什么变量至关重要。错误的使用一个对象而不是一个Boolean值,就有可能彻底改变应用程序的流程。

赞(2) 打赏
未经允许不得转载:前端范 » 数据类型之Boolean
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏