JavaScript - Boolean 布尔对象
JavaScript Boolean 布尔 对象表示两个值,即"真"或"假"。您可以使用 Boolean() 构造函数和 new 关键字创建一个布尔对象。该构造函数接受一个值作为参数,并返回一个布尔对象。如果省略 value 参数,或者 value 参数为 0、-0、null、false、NaN、undefined 或空字符串 (""),则该对象的初始值为 false。在编程中,if-else 语句会根据条件表达式的布尔值来执行 if 块或 else 块的代码。
语法
使用以下语法创建布尔对象。
const val = new Boolean(value);
此处的值是一个要转换为布尔对象的表达式。
它返回一个包含布尔值的对象。
您可以通过将布尔值赋给变量来在 JavaScript 中创建布尔原语 -
let bool = true;
布尔属性
以下是布尔对象的属性列表 -
| 序号 | 属性和说明 |
|---|---|
| 1 |
constructor
返回创建该对象的布尔函数的引用。 |
| 2 |
prototype
prototype 属性允许您向对象添加属性和方法。 |
在以下部分中,我们将通过几个示例来说明布尔对象的属性。
布尔方法
以下是布尔对象的方法列表及其说明。
| 序号 | 方法 &说明 |
|---|---|
| 1 |
toSource()
返回包含布尔对象来源的字符串;您可以使用此字符串创建一个等效对象。 |
| 2 |
toString()
根据对象的值返回"true"或"false"字符串。 |
| 3 |
valueOf()
返回布尔对象的原始值。 |
在接下来的部分中,我们将通过一些示例来演示布尔方法的用法。
示例:创建布尔对象
在下面的示例中,我们已定义 boolObj 变量并存储布尔对象。
我们使用 typeof 运算符检查 boolObj 变量的类型。在输出中,您可以观察到 boolObj 的类型是对象。
<html>
<body>
<p id = "output"> </p>
<script>
const boolObj = new Boolean('true'); //defining boolean object
document.getElementById("output").innerHTML = "typof boolObj == " + typeof boolObj;
</script>
</body>
</html>
输出
typof boolObj == object
JavaScript Boolean() 函数
Boolean() 函数允许开发者在对作为参数传递的特定表达式进行求值后获取布尔值。
Boolean(表达式);
这里的值是一个表达式,用于求值并获取相关的布尔值。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 = 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 的布尔值错误
Boolean() 函数对错误值返回 false。错误值有六种:false、null、undefined、0(零)、""(空字符串)、NaN。
我们来看下面的示例。
示例
在下面的代码中,我们将所有错误值作为参数传递给 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
所有其他值均为真值,Boolean() 函数返回 true。
示例
在下面的代码中,我们将真值作为 Boolean() 函数参数传递。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

