# 比較與邏輯運算子
## =、 == 、=== 比較差異
```javascript=
let a = 1;
//一個等於,賦予值的意思
let b = 2;
console.log(a==b);
console.log(a!=b);
//兩個等於,比較運算子
```
```javascript=
let a = 1;
let b = "1";
console.log(a==b);
//兩個等於,協助轉型
console.log(a===b);
//三個等於,會比較,也會判斷型別
//但不會幫忙轉
```
## 邏輯運算子 && (and)、|| (or)
```javascript=
// &&同時滿足條件
let a = 1;
let b = 2;
console.log(a==2 && b==2);
```
```javascript=
// ||滿足其中一個條件
let c = 3;
let d = 4;
console.log(c==3 || d==4);
```
```javascript=
978 && 0
>0
// &&要兩個都是 true,才會是 true ,但 0 是 false,所以就回傳了 0 。
```
:::warning
補充一下有什麼東西算 falsy家族 ,0 、 -0 、 null 、 false 、 Nan 、 undefined 、 空字串("")。其餘的都是 Truthy 家族。
:::
## 邏輯運算子範例情境
```javascript=
// &&練習
//符合贈禮條件
//必須同時符合以下兩個條件才贈禮
//必須滿500(含)
//必須是VIP
let rice = true;
let cost =600;
console.log(cost>=500 && isVip==true);
```
```javascript=
// &&練習
// 小孩吃東西
// 只要冰箱有米粒或蘋果任一個,小孩就願意進食
let haveRice = true;
let haveApple = false;
console.log(haveRice==true || haveApple==false);
```
{"metaMigratedAt":"2023-06-16T12:54:52.224Z","metaMigratedFrom":"Content","title":"比較與邏輯運算子","breaks":true,"contributors":"[{\"id\":\"38a11061-c2fb-49bf-9589-01fcd2c81034\",\"add\":953,\"del\":0}]"}