如何在 JavaScript 中检查空值?
在本文中,我们将学习如何在 JavaScript 中检查空值。**空值**表示故意省略任何对象值。它是 JavaScript 的一个原始值,在布尔运算中为假。这将**null**与相关的原始值`undefined`区分开来,后者表示意外省略任何对象值。这是因为已声明但未赋值的变量是`undefined`而不是`null`。
您可以使用现实世界的类比将变量可视化为一个盒子。盒子可以容纳诸如茶壶之类的东西,就像变量一样。但是,当您打开一个盒子却发现里面什么也没有!您收到一个空包裹,因为有人犯了错误。盒子具有空值,这也就是表示它不包含任何内容的另一种说法。
有多种方法可以检查 JavaScript 中的值是否为空。
- 使用严格相等运算符 (===)
- 使用`Object.is()` 函数
- 使用`typeof` 运算符
使用严格相等运算符 (===)
在这种方法中,我们将学习如何使用 (===) 运算符来检查空值。此测试仅适用于**null**,而不适用于 ""、**undefined**、**false**、**0** 或**NaN**。
语法
以下是使用严格相等运算符的语法:
let result = ( v === null );
返回值
**v === null** - 此参数检查变量“v”中存储的值是否等于 null。相应地,它返回 true 或 false。
算法
**步骤 1** - 我们看到声明了一个变量 **v** 并将其初始化为空值。
**步骤 2** - 然后我们使用 if 语句检查变量是否为空,如果为真,则在用户的屏幕上显示相应的消息。
示例
下面的示例演示了如何使用严格相等运算符 (===) 来检查 JavaScript 中的空值。
<!DOCTYPE html>
<html>
<head>
<title> Check for null values in JavaScript </title>
</head>
<body>
<h2>Check for null values using the strict equality operator.</h2>
<div id="output"> </div>
<script>
let output = document.getElementById("output");
var v = null;
if (v === null) {
output.innerHTML = "Value is null";
} else {
output.innerHTML = "Value is not null";
}
</script>
</body>
</html>在上面的输出中,正在检查变量是否为空,并且该值正在 if 块中执行,该变量包含空值。
使用 Object.is() 函数
JavaScript 中的**Object.is()**函数比较两个值以查看它们是否相同。布尔值指示函数中的两个参数的值是否相同。如果两个值都为 null,则这两个值可能相同。
语法
以下是 Object.is() 函数的语法:
Object.is( q, null );
参数
**q** - 要传递到函数中的变量,其初始化值为 null。
**null** - 此参数为空值。
算法
**步骤 1** - 我们声明一个名为 q 的变量并将其设置为**null**。
**步骤 2** - 然后,给定输入 q 和空值,我们使用 if 语句检查`Object.is()`方法以确定两者是否相同。
**步骤 3** - 如果它们的值相同,则在用户的屏幕上显示相应的消息。
示例
在下面的程序中,我们使用**Object.is()**函数来检查空值。
<!DOCTYPE html>
<html>
<head>
<title>Check for null values in JavaScript</title>
</head>
<body>
<h2>Check for null values using the JavaScript Object.is() method.</h2>
<div id="output"> </div>
<script>
let output = document.getElementById("output");
var q = null;
if (Object.is(q, null)) {
output.innerHTML = "Value is null";
} else {
output.innerHTML = "Value is not null";
}
</script>
</body>
</html>在上面的输出中,正在检查变量是否为空,并且该值用 true 语句打印出来,该变量包含空值。
使用 typeof 运算符
可以使用**typeof**运算符来确定 JavaScript 变量的数据类型。在这里,我们将`typeof`运算符与 null 运算符一起使用。(!variable) 表示该值不为空,如果使用`typeof`运算符检查具有对象数据类型的变量,则该值为 null。
语法
以下是`typeof`运算符的语法:
typeof var;
这里**var**是要检查其数据类型的变量,并用作参数。
算法
**步骤 1** - 我们声明一个名为 a 的变量并将其设置为 null。
**步骤 2** - 然后我们检查变量的补码和变量的数据类型是否为对象。
**步骤 3** - 如果两个条件都匹配,则该值被认为等于 null。
**步骤 4** - 在用户的屏幕上显示相应的消息。
示例
在这个例子中,我们使用 JavaScript 的 typeof 运算符来检查给定变量的值是否等于 null。
<!DOCTYPE html>
<html>
<head>
<title>Check for null values in JavaScript </title>
</head>
<body>
<h2>Check for null values using the JavaScript typeOf operator.</h2>
<div id="output"> </div>
<script>
let output = document.getElementById("output");
var a = null;
if (!a && typeof a === "object") {
output.innerHTML = "Value is null";
} else {
output.innerHTML = "Value is not null";
}
</script>
</body>
</html>在上面的输出中,正在检查变量是否为空,并且该值正在 if 块中执行,该变量具有空值。
结论
在本教程中,我们使用了三种方法来检查 JavaScript 中的空值。
在第一种方法中,我们使用了严格的`相等运算符`并展示了可以比较两个空值。
第二种方法很有用,因为它使用`Object.is()`函数来检查和比较两个空值。
第三种方法是使用 typeof 运算符,它检查变量的值及其数据类型以返回它是否为空值。
本文中的所有这些方法总结了如何在 JavaScript 中检查空值。
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP