如何在JavaScript中檢查空值?
在這篇文章中,我們將學習如何在JavaScript中檢查空值。**空值**表示故意缺少任何物件值。它是JavaScript中的一個原始值,在布林運算中為假。這將**null**與相關的原始值undefined區分開來,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()**函式比較兩個值以檢視它們是否相同。布林值指示函式中的兩個引數的值是否相同。如果兩個值都為空,則這兩個值可能相同。
語法
以下是Object.is()函式的語法:
Object.is( q, null );
引數
**q** - 要傳遞到函式中的變數,該變數初始化為空值。
**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運算子與空運算子一起使用。(!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