Expression / Operator part2
Last updated
Was this helpful?
Last updated
Was this helpful?
資料來源:
一個等於( =
)。賦值
兩個等於( ==
)。自動轉型的比較
三個等於( ===
)。不會自動轉型的比較
不等於( !=
)。會自動轉型
不等於( !==
)。不會自動轉型
如果其中一個為 Boolean,會將 true 轉為數字 1。false 轉為數字 0
字串與數字作比較,字串會先轉為數字 Number()
若一個為物件型態,則會用 valueOf()
,取得基本型別的值。
NaN 不等於 NaN
兩個物件比較時,指向同一個實體才會回傳 true
下列範例資料來源:
運算子
行為
a += b
a = a + b
a -= b
a = a - b
a *= b
a = a * b
a /= b
a = a / b
a %= b
a = a % b
在 &&
||
!
,其中 ! not
運算子,會回傳 true
or false
在使用上面三種前首先要知道
Undefined
Null
0 / NaN
""
/ ''
(空字串)
會轉化為 false
而其他狀況會轉化為 true
範例程式
在處理這些運算子時,會先透過 ToBoolean
判斷 falsy
or truthy
對 &&
而言,若第一個值轉換為 true
,則回傳第二個值
對 ||
而言,若第一個值轉換為 true
,則會傳第一個值
對 &&
而言,若第一個值轉換為 false
,則回傳第一個值
對 ||
而言,若第一個值轉換為 false
,則會傳第二個值