当前位置:首页 > 专题管理

JavaScript Boolean (逻辑)对象

JavaScript Boolean 对象

Boolean 对象也称作布尔对象,其意义是表示逻辑的两方面:真(true)和假(false)。创建 Boolean 对象语法如下:

//构造函数
new Boolean(value);
//转换函数
Boolean(value);

value 参数可以是要转换成布尔对象的值,也可以是布尔对象存放的值。以上两种语法的不同之处,可以通过下面的例子看出来:

<script type="text/javascript">

document.write( typeof(new Boolean(1)) + '<br />' );
document.write( typeof(Boolean(1)) );

</script>

运行该例子,输出:

object
boolean

可见,利用构造函数(new 关键字)得到的是一个包含布尔值的对象;而使用转换函数,得到的则是一个布尔值。

小结:Boolean 对象算是一个比较特殊的对象,我们可以把它视作是将布尔值进行包装的一个容器。

提示

如果 value 参数被设置为 0、-0、null、""、false、undefined 或 NaN,或者省略该参数,该 Boolean 对象设置为 false,反之则为 true。

注意,尽管 Boolean 对象被设置为 false ,但在 if 判断中仍为 true:

<script type="text/javascript">

var obj1 = new Boolean(false);
if( obj1 ){
    document.write( '1' );
}else{
    document.write( '2' );
}

</script>

运行该例子会输出 1。原因在于尽管 obj1 是一个被设置为 false 的对象,但在 if 判断时,obj1 是一个非空的对象,因此认为它是有意义的,返回 true 而判断成立。这与 obj1 对象包含的布尔值无关。

Boolean 对象属性

Boolean 对象支持 prototype 属性来增加或重新定义对象的属性和方法。

Boolean 对象方法

  • toString():把逻辑值转换为字符串
  • valueOf():得到 Boolean 对象的原始值

当要打印出一个布尔对象或者有类似的字符串操作时,JavaScript 就会隐式地调用 toString() 方法。