To be or Not To be?邏輯運算子

邏輯運算子(Logical Operator)有 AND &&、OR ||、NOT ! 三種。運算子兩側的值經過ToBoolean轉換後會得到一個布林值,再由邏輯運算子比較後傳回其中一個值。

&&以及||再進行判斷時,會對左邊的數值進行檢查,如果原本是布林值,就進行後續判斷。如果不是,則透過ToBoolean轉換為true或false。

  • AND &&:(條件/運算式A) && (條件/運算式B),如果兩側的值都為true,得到true的結果;如果其中一方為false,則得到false。
    如果第一個值轉換為true,則回傳第二個值,否則回傳第一個值。
  • OR ||:(條件/運算式A) || (條件/運算式B),兩側的值只要有一側為true,就得到true的結果;如果兩側都為false,才得到false。
    如果第一個值轉換為true,則回傳第一個值,否則回傳第二個值。
  • NOT !:true的結果透過!轉換會得到false,而false的結果會變成true。

那些經過ToBoolean轉換後會得到false的值共有以下五種:

  • undefined
  • Null
  • +0、-0
  • NaN
  • 空字串””或’’

其他的值都會轉為true。


To be or Not To be?邏輯運算子
https://popeye-ux.github.io/2021/09/10/21-day10-logical/
作者
POPEYE
發布於
2021年9月10日
許可協議