邏輯運算的短路性質
關於 false
在 JavaScript 中,以下這些值會被當作是 false:
null
0
NaN
''
(空字串)undefined
|| = or(或)
- 只要其中一邊遇到 true,即會顯示 true
- 若第一個遇到的值即為 true,即會回傳 true,不需再理會第二個值
### && = and(和)true || true,即得 true true || false,即得 true 3 || 10,即得 3 false || 5,即得 5 0 || 10,即得 10(數值 0 在 JavaScript 中會被當作 false) false || 10,即得 10
主要由第二個數值決定要回傳什麼樣的結果
但如果第一個值是 false,就只會回傳 false,不再往後看後面的值true && true ,即得 true true && false ,即得 false 3 && 10,即得 10 10 && 3,即得 3 false && 3,即得 false 3 && false,即得 false
! = not
!true,即得 false
!false,即得 true
位移運算子 >> 與 <<
>> 右移 n 位
\<< 左移 n 位
懶人包:
\<< 可以想成乘以 2 的 n 次方
>> 可以想成除以 2 的 n 次方
10 << 1,得 20
10 << 3,得 80(這裡的 3 代表 2^3)
1 << 10,得 1024(這裡的 10 代表 2^10)
1024 >> 1,得 512
為什麼要用這個位移運算子?
比起使用 * 這個符號,對於電腦來說二進位是電腦最原始的形式,所以使用位移運算子的效能會比較快。
位元運算 and、or、not、xor
(待補)
變數
undefined = 宣告了,但未賦值
not defined = 尚未宣告
(以上內容是我在 程式導師實驗計畫第四期 的學習紀錄,如有理解錯誤,歡迎糾正,謝謝:D)
資料來源:Lidemy