在寫JS的時候,發現框架中有用到 == 和 === ,在Java裏面是沒有===的用法的,所以查詢了資料瞭解一下。
區別
因爲JS是弱類型的語言,所以存在變量的類型是可以隱性轉換的。在使用==進行比較的時候,JS會把兩個變量改成同一個類型進行比較,例如:
var a = '1'
var b = 1
console.log(a == b)
可以看到a和b是不同類型的,JS會隱性的轉成同一個類型,所以最後比較的結果就是true。
而使用===進行比較的時候,這個是強類型比較,JS不會進行隱性轉換。所以最後比較的結果就是false。