void 運算符在 javascript 中用于將表達式的值計算為 undefined,其用法包括:抑制函數(shù)返回值、阻止意外行為、檢查表達式是否為 “truthy”、創(chuàng)建隱式轉(zhuǎn)換,優(yōu)先級較低,不建議一般使用。
JavaScript: void 難題:全面指南
什么是 void?
void
是 JavaScript 中的一個運算符,用于計算表達式的值為 undefined
。與其他運算符不同,void
不影響表達式的執(zhí)行。
用法
void
運算符只能用于一個操作數(shù)。其語法如下:
void expression;
登錄后復(fù)制
其中 expression
是要計算為 undefined
的表達式。
實戰(zhàn)案例
以下是一些 void
運算符的實戰(zhàn)案例:
抑制函數(shù)調(diào)用的返回值:
void myFunction(); // myFunction 返回一個值,但不會使用它
登錄后復(fù)制阻止意外行為:
let x = void (y ?? 0); // 如果 y 為 null 或 undefined,則 x 將為 undefined,否則為 y
登錄后復(fù)制檢查表達式是否為 “truthy”:
if (!void expression) { // 如果 expression 為 truthy,則不會執(zhí)行此代碼塊 }
登錄后復(fù)制創(chuàng)建隱式轉(zhuǎn)換:
const number = new Number(42); // 創(chuàng)建一個 Number 對象 const primitive = void number; // 獲取原始值 42
登錄后復(fù)制
注意點
void
運算符不會拋出異常,即使操作數(shù)是一個無效的表達式。void
運算符的優(yōu)先級比大多數(shù)其他運算符都要低。void
主要用于特殊情況,一般情況下不建議使用。
其他示例
const result = void (prompt("Please enter your name:") || "Unknown"); // 獲取用戶輸入,或使用 "Unknown" 作為默認(rèn)值
登錄后復(fù)制
let value; if (void value) { // 當(dāng) value 為 undefined 或 null 時,執(zhí)行此代碼塊 }
登錄后復(fù)制