1. 主页
  2. 文档
  3. 君土参考手册
  4. 标准内置对象
  5. 布尔(Boolean)

布尔(Boolean)

布尔(Boolean)对象是一个布尔值的对象包装器。

描述

如果需要,作为第一个参数传递的值将转换为布尔值。如果省略或值0-0,空(null)假(false),非数(NaN),灭(undefined),或空字符串(""),该对象具有的初始值 (false)。所有其他值,包括任何对象,空数组([])或字符串"假",都会创建一个初始值为的对象(true)

注意不要将基本类型中的布尔值 真(true) 和 假(false) 与值为 真(true) 和 假(false) 的 布尔(Boolean) 对象弄混了。

其值不是(undefined)(null)的任何对象(包括其值为(false)的布尔对象)在传递给条件语句时都将计算为(true)。 例如,以下语句中的条件评估为(true)

定 x = 启 布尔(假);
若 (x) {
  // 这里的代码会被执行
}

基本类型的布尔值不受此规则影响。例如下面的 (if) 语句的条件为假:

定 x = 假;
若(x) {
  // 这里的代码不会执行
}

不要用创建 布尔(Boolean) 对象的方式将一个非布尔值转化成布尔值,直接将 布尔(Boolean)  当做转换函数来使用即可,或者使用双重非(!!)运算符:

定 x = 布尔(表达式);     // 推荐
定 x = !!(表达);          // 推荐
定 x = 启 布尔(表达); // 不太好

对于任何对象,即使是值为 (false) 的 布尔(Boolean) 对象,当将其传给 布尔(Boolean) 函数时,生成的 布尔(Boolean) 对象的值都是 (true)。

定 假_ = 启 布尔(假);   // 真
定 g = 启 布尔(假_);       // 真
定 串_ = 启 文("你好");
定 s = 启 布尔(串_);      // 真

最后,不要在应该使用基本类型布尔值的地方使用 布尔(Boolean) 对象。

注意:当将非标准属性document.all用作此构造函数的参数时,结果是值为(false)的布尔对象。 此属性是旧属性,是非标准属性,不应使用。

构造器

布尔()(Boolean)
创建一个新的布尔(Boolean) 对象。

实例方法

转字串() – toString()
根据对象的值返回字符串"true""false"。 重写 对象.字串()(Object.toString)方法。

原值()(valueOf)
返回布尔(Boolean)对象的原始值。 重写对象.原值(Object.valueOf)方法。


原始MDN文