比較運算子
This seems to me kind of poorly explained, mostly the diference betwen "==" and "==="...比較運算子比較他的運算元,並根據比較是否為真的結果返回邏輯值。運算元可以是數值、字串、邏輯或物件的值。字串是以 Unicode 的值作為標準的字典順序來比較。在大多數情況下,如果兩個運算元不是同樣的類型,JavaScript 會為了比較而嘗試把運算元轉換為適當的類型。(本規則的唯一例外是 ===
和 !==
,他會進行“嚴格的”相等性和不相等性的檢查,且在檢查等相性之前,並不會把運算元轉換為相容的類型。)通常以數值進行比較。下表以範例代碼解明比較運算子︰
var var1 = 3, var2 = 4;
運算子 | 說明 | 返回 true 的範例 |
---|---|---|
等於 (==) | 運算元相等時,返回 true。 | 3 == var1
3 == '3' |
不等於 (!=) | 運算元不相等時,返回 true。 | var1 != 4 |
嚴格的等於 (===) | 運算元相等且類型相同時,返回 true。 | 3 === var1 |
嚴格的不等於 (!==) | 運算元不相等或類型不相同時,返回 true。 | var1 !== "3" |
大於 (>) | 左邊的運算元大於右邊的運算元時,返回 true。 | var2 > var1 |
大於或等於 (>=) | 左邊的運算元大於或等於右邊的運算元時,返回 true。 | var2 >= var1 |
小於 (<) | 左邊的運算元小於右邊的運算元時,返回 true。 | var1 < var2 |
小於或等於 (<=) | 左邊的運算元小於或等於右邊的運算元時,返回 true。 | var1 <= var2 |
表 3.3: 比較運算子