如何在JavaScript中将布尔值转换为数字?
在本教程中,我们将学习如何在JavaScript中将布尔值转换为数字。布尔值是变量的一种数据类型,与其他编程语言一样,JavaScript也支持这种数据类型。
布尔值数据类型只包含两个值:true和false。在某些情况下,程序员需要将true或false值转换为数字。例如,使用严格相等运算符比较布尔值和数字变量。
这里,我们使用不同的运算符,介绍三种将布尔值转换为数字的方法。
使用Number()函数
在JavaScript中,Number()函数可以将任何变量转换为数字。我们也可以用它来将布尔变量转换为数字。
语法
用户可以按照以下语法将布尔值转换为数字。
let bool = true; let result = Number(bool);
参数
bool − 需要转换为数字的布尔变量。
示例
在下面的示例中,我们使用JavaScript数字库的Number()函数将true和false这两个布尔值都转换成了数字。Number()函数对于true值返回1,对于false值返回0。
<html> <head> </head> <body> <h2>Convert the Boolean to number in JavaScript.</h2> <h4>Convert the Boolean ( true / false ) respectively to number using <i> Number() </i> function.</h4> <div id="number1"></div> <div id = "number2"></div> </body> <script> var number1 = document.getElementById("number1"); var number2 = document.getElementById("number2"); let bool = true; let result = Number(bool); number1.innerHTML = result; number2.innerHTML = Number(false); </script> </html>
使用位运算符
在本节中,我们将学习如何使用按位或和按位与运算符将布尔值转换为数字。当我们对布尔值执行与0的按位或运算时,它将返回数字值。
此外,当用户对1与任何布尔值执行按位与运算时,它将返回相应的数字值。
语法
用户可以按照以下语法使用位运算符将布尔值转换为数字。
let bool = true; let result = bool | 0; // using the Bitwise OR operator let result = bool & 1; // using the Bitwise AND operator
示例
在下面的示例中,我们演示了两种将布尔值转换为数字的示例,一种使用按位|运算符,另一种使用按位&运算符。
<html> <head> </head> <body> <h2>Convert the Boolean to number in JavaScript.</h2> <h4>Converting the Boolean true to number using <i> Bitwise | </i> operator.</h4> <div id = "number1"></div> <h4>Converting the Boolean false to number using <i> Bitwise &</i> operator.</h4> <div id = "number2"></div> </body> <script> var number1 = document.getElementById("number1"); var number2 = document.getElementById("number2"); let bool = true; let result = bool | 0; number1.innerHTML = result; bool = false; number2.innerHTML = bool & 1; </script> </html>
使用算术运算符
这是本教程中最后一种将布尔值转换为数字的方法。我们将使用加法和乘法算术运算符。但是,我们也可以使用减法和除法运算符。
当我们从布尔值中加或减0时,它将返回与布尔值对应的数字值。同样,当我们将布尔值乘以1时,它将返回与加法相同的结果。
语法
请按照以下语法使用乘法和加法运算符。
let bool = true; let result = bool + 0; // using the Arithmetic + operator let result = bool * 1; // using the Arithmetic * operator
示例
在下面的示例中,我们使用了加法和乘法运算符将布尔值转换为数字。
<html> <head> </head> <body> <h2>Convert the Boolean to number in JavaScript.</h2> <h4>Convert the Boolean false to number using <i> Arithmetic + </i> operator.</h4> <div id = "number1"></div> <h4>Convert the Boolean true to number using <i> Arithmetic * </i> operator.</h4> <div id = "number2"></div> </body> <script> var number1 = document.getElementById("number1"); var number2 = document.getElementById("number2"); let bool = false; let result = bool + 0; number1.innerHTML = result; bool = true; number2.innerHTML = bool * 1; </script> </html>
用户可以使用这三种方法中的任何一种将布尔值转换为整数。第一种方法调用内置库函数,它比第二种和第三种方法慢。在任何编程语言中,位运算都是最快的运算。因此,第二种方法是最快的方法,用户可以轻松地使用它。