JavaScript 中的邏輯運算子:揭開&&、|| 和!
理解邏輯運算子可能是一個挑戰,尤其是當處理布林值和其他資料類型。本文旨在全面解釋 &&、|| 和 ! 的行為。
布林運算子:&& 和 ||
這些運算子執行布林運算,傳回布林結果。 &&(邏輯與)如果兩個運算元都為 true,則傳回 true,否則傳回 false。 || (邏輯或)如果至少一個操作數為 true,則傳回 true,僅當兩個操作數都為 false 時才傳回 false。
例如:
console.log(true && true); // true console.log(true || false); // true
邏輯運算中的型別強制
JavaScript 在使用不同資料型別的運算元計算邏輯運算子時執行類型強制。 Falsy 值被強制為 false,而 true 值保持 true。
下表總結了邏輯運算中的類型強制:
Operand 1 | Operand 2 | Result |
---|---|---|
True | Any | True |
False | True | False |
False | False | False |
True | Falsy | True |
Falsy | True | False |
Falsy | Falsy | False |
短路評估
邏輯運算符遵循短路求值原則。如果 && 計算出真值,則無需計算第二個操作數,因為結果已經確定。同樣,如果 || 計算出錯誤值,則無需進一步計算。
例如:
if (user.firstName && user.lastName) { // Username is valid, proceed }
否定運算子:!
否定運算子! (邏輯非)將值轉換為其相反的布林值。 true 值會轉換為 false,而 false 值會轉換為 true。
例如:
console.log(!true); // false console.log(!false); // true
此外,以下值在JavaScript 中被視為false:
""
document.all以上是邏輯運算子(&&、|| 和 !)在 JavaScript 中如何運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!