== 檢查值相等, 容許類型轉換
=== 檢查值和類型相等, 不容許類型轉換數組
那麼在不一樣狀況下應該使用==仍是===安全
(1)若是要比較的兩個值的任意一個(即一邊)多是 true 或者 false 值,那麼要避免使用 ==,而使用 ===。函數
(2)若是要比較的兩個值中的任意一個多是特定值(0、"" 或者 []——空數組),那麼避免使用 ==,而使用 ===spa
(3)在全部其餘狀況下,使用 == 都是安全的。不單單只是安全而已,這在不少狀況下也會簡化代碼,提升代碼的可讀性對象
若是你可以肯定這些值,而且 == 是安全的,那麼就可使用它!若是不能肯定其值,那麼就使用 ===。ip
若是是比較兩個非原生值的話,好比對象(包括函數和數組),那麼須要特殊注意 == 與
=== 這些比較規則。由於這些值一般是經過引用訪問的,因此 == 和 === 比較只是簡單地檢查這些引用是否匹配,而徹底不關心其引用的值是什麼。it