JavaScript 的 Boolean 对象代表两种值,即 "true" 或 "false"。你可以使用带有 'new' 关键字的 Boolean()
构造函数来创建一个 Boolean 对象。它接受一个值作为参数并返回一个 Boolean 对象。如果省略了值参数或值为 0、-0、null、false、NaN、undefined 或空字符串 (""), 则对象的初始值为 false。在编程中,if-else 语句根据条件表达式的布尔值来评估执行 'if' 块或 'else' 块中的代码。
语法
使用以下语法来创建一个布尔对象:
const val = new Boolean(value);
这里 value
是一个要转换成布尔对象的表达式。
它返回一个包含布尔值的对象。
你可以通过给变量赋一个布尔值来创建一个布尔原始类型:
let bool = true;
Boolean 属性
以下是一个 Boolean 对象属性列表:
Sr.No. |
属性 |
描述 |
1 |
constructor |
返回创建对象的 Boolean 函数的一个引用。 |
2 |
prototype |
该原型属性允许你在对象上添加属性和方法。 |
在以下章节中,我们将有几个例子来说明 Boolean 对象的属性。
Boolean 方法
以下是一个 Boolean 对象方法列表及其描述:
Sr.No. |
方法 |
描述 |
1 |
toSource() |
返回包含 Boolean 对象源代码的字符串;你可以使用这个字符串来创建一个等价的对象。 |
2 |
toString() |
根据对象的值返回 "true" 或 "false" 的字符串形式。 |
3 |
valueOf() |
返回 Boolean 对象的原始值。 |
在以下章节中,我们将有几个例子来演示使用 Boolean 方法的方法。
示例:创建一个 Boolean 对象
在下面的示例中,我们定义了 boolObj
变量并存储了布尔对象。
我们使用 typeof
操作符检查 boolObj
变量的类型。在输出中,你可以观察到 boolObj
的类型是对象。
<html>
<body>
<p id="output"></p>
<script>
const boolObj = new Boolean('true');
document.getElementById("output").innerHTML = "typeof boolObj == " + typeof boolObj;
</script>
</body>
</html>
输出:
typeof boolObj == object
JavaScript Boolean() 函数
Boolean()
函数允许开发者在评估传递给它的特定表达式后获取布尔值。
Boolean(Expression);
这里 value
是一个要评估并获得相关布尔值的表达式。Boolean()
函数根据作为参数传递的表达式返回 true 或 false。
示例
在下面的示例中,我们使用 Boolean()
函数并传入不同的表达式作为参数。在输出中,你可以观察到 Boolean()
函数返回的布尔值。
<html>
<body>
<p id="output"></p>
<script>
let res = Boolean(100 > 90);
document.getElementById("output").innerHTML = "Boolean(100 > 90) : " + res + "<br>";
res = Boolean(100 < 90);
document.getElementById("output").innerHTML += "Boolean(100 < 90) : " + res + "<br>";
res = Boolean(100 == 90);
document.getElementById("output").innerHTML += "100 == 90 : " + res + "<br>";
</script>
</body>
</html>
输出:
Boolean(100 > 90) : true
Boolean(100 < 90) : false
100 == 90 : false
JavaScript Falsy 布尔值
Boolean()
函数对于 falsy 值返回 false。有六个 falsy 值:false、null、undefined、0 (零)、"" (空字符串)、NaN。
让我们看看下面的例子。
示例
在下面的代码中,我们将所有 falsy 值作为 Boolean()
函数的参数并打印 Boolean()
函数返回的值。对于所有七个值,Boolean()
函数都返回 false。
<html>
<body>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
"Boolean(0) : " + Boolean(0) + "<br>" +
"Boolean(-0) : " + Boolean(-0) + "<br>" +
"Boolean(null) : " + Boolean(null) + "<br>" +
"Boolean(undefined) : " + Boolean(undefined) + "<br>" +
"Boolean('') : " + Boolean('') + "<br>" +
"Boolean(NaN) : " + Boolean(NaN) + "<br>" +
"Boolean(false) : " + Boolean(false);
</script>
</body>
</html>
输出:
Boolean(0) : false
Boolean(-0) : false
Boolean(null) : false
Boolean(undefined) : false
Boolean('') : false
Boolean(NaN) : false
Boolean(false) : false
所有其他的值都是 truthy 的,Boolean()
函数返回 true。
示例
在下面的代码中,我们将 truthy 值作为 Boolean()
函数的参数。对于所有的 truthy 值,Boolean()
函数返回 true。即使我们传递了对象和函数作为 Boolean()
函数的参数,它也返回 true。
<html>
<body>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
"Boolean(1) : " + Boolean(1) + "<br>" +
"Boolean(-1) : " + Boolean(-1) + "<br>" +
"Boolean('Hello') : " + Boolean('Hello') + "<br>" +
"Boolean(true) : " + Boolean(true) + "<br>" +
"Boolean(10.99) : " + Boolean(10.99) + "<br>" +
"Boolean({name: 'John'}) : " + Boolean({ name: 'John' }) + "<br>" +
"Boolean(() => {return 1;}) : " + Boolean(() => { return 1; });
</script>
</body>
</html>
输出:
Boolean(1) : true
Boolean(-1) : true
Boolean('Hello') : true
Boolean(true) : true
Boolean(10.99) : true
Boolean({name: 'John'}) : true
Boolean(() => {return 1;}) : true