等於的比較運算子

JavaScript 有三種「等號」的運算子,分別是:

  • 一個等號 =:賦值運算子,把右方的值賦予左方
  • 兩個等號 ==:比較運算子,檢查左右方的值是否相等
  • 三個等號 ===:比較運算子,檢查左右方的型別與值是否都相等

範例一

99 == '99'; // true

回傳 true,因為 JavaScript 在做 == 的比較運算時,會自動先把右邊的 String 型別轉換成 Int,再將兩邊的值拿來比較,因此兩邊的值一樣就會回傳 true。

範例二

99 === '99'; // false

回傳 false,因為 === 除了比較兩邊的值是否相同之外,也會比較兩者型態是否相同。
範例當中,左邊是數字,而右邊是字串,所以會判定為不相等。

結論

==:比較前會先自動轉換型別,再比較雙方的「值」。
===:嚴格比較,會比較「型別」與「值」。

以上資源是我自己整理過後的筆記,若有錯誤歡迎隨時和我聯繫