JavaScript 有三種邏輯運算子: &&、||、!
&&
(And)
舉一個生活化的例子:
用程式碼來表達:
🎃 先宣告兩個變數
- 有帶身分證:
var isID = true;
- 沒帶印章:
var isInk = false;
🎃 必須同時滿足這兩個條件,來做驗證:「身分證」、「印章」都要帶
1 | isID == true && isInk == true; |
最後回傳 false 的原因為:
- 雖然第一個條件「
isID == true
」是 true - 但是第二個條件「
isInk == true
」是 false
–> 只要有「其中一個條件是 false」,最後就會回傳 false
||
(Or)
舉一個生活化的例子:
用程式碼來表達:
🎃 先宣告兩個變數
- 我的帳單金額:
var bill = 1200;
- 我不是 VIP:
var isVIP = false;
🎃 只要「其中一個條件成立」即可
1 | bill >= 1000 || isVIP == true |
最後回傳 true 的原因為:
- 雖然「第二個條件
isVIP == true
」會回傳 false - 但是 「第一個條件
bill >= 1000
」是回傳 true
–> 只要「其中一個條件成立」,最後就會回傳 true
!
(Not)
例如:
- 原本
2 > 3
是回傳 false
🎃 如果寫 !(2 > 3)
,就會回傳 true
範例練習
我的 codepen 範例
https://codepen.io/saffranwang/full/QWwGWyN
html 架構
html:
1 | <div class="wrap"> |
JS 程式碼
🎃 先宣告兩個變數:
- 我的帳單金額:
var myBill = 1250;
- 我不是 VIP:
var isVIP = false;
🎃 因為服務生一開始說「“兩者達到”才能送贈品」,所以要使用「&&
」來寫條件
1 | var andCheck = myBill >= 1000 && isVIP == true; |
🎃 服務生後來又說「“只要一個有達到”就送贈品」,所以要使用「||
」來寫條件
1 | var orCheck = myBill >= 1000 || isVIP == true; |
🎃 接下來,就可以把「andCheck
帶入id="andId"
」,把「orCheck
帶入id="orId"
」
JS:
1 | var myBill = 1250; |