JavaScript 雙管道

Shraddha Paghdar 2022年5月10日
JavaScript 雙管道

有時我們不知道物件的屬性是否包含值,或者是否設定了變數。我們希望我們的程式碼使用備份值,即使該值未設定。本文將介紹 JavaScript 雙管道||

JavaScript 支援各種運算子,如賦值、算術、邏輯、條件等。JavaScript 邏輯運算子通常與布林(邏輯)值一起使用。如果使用布林值,它們會根據運算子的型別返回一個布林值。

ANDOR 運算子根據結果返回指定運算元之一的值。因此,當與非布林值一起使用時,這些運算子可以返回非布林值。邏輯運算子支援邏輯與 (&&)、邏輯或 (||) 和邏輯非 (!)。

JavaScript 雙管道

邏輯 OR 如果可以轉換為 true,則返回 expr1;否則,它返回 expr2。因此,如果與布林值一起使用,如果運算元為真,它將返回 True;;如果兩者都為假,則返回假。

將被視為假的值是 nullNaN0、空字串(""'')和 undefined。使用 !(!bCondition1 && !bCondition2) 可以將邏輯 OR 運算子轉換為邏輯 AND。有關更多資訊,請閱讀 Logical OR 運算子的文件。

語法:

expr1 || expr2

示例程式碼:

let a = "Hello";
let b;
console.log(a || "Not Found");
console.log(a ? a : "Not Found");
console.log(b || "Not Found");

在上面的例子中,||檢查 a 的計算結果是否為 true。如果是,它將返回 Hello;否則,它返回 Not Foundb 也是如此。

上面的表示式也可以使用 JavaScript 的三元運算子來編寫,它做同樣的事情。但是邏輯或作為 JavaScript 三元運算子的簡寫。前面程式碼的輸出與下圖相同。

輸出:

"Hello"
"Not Found"
Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn