這個問題已經在這裏有了答案: javascript
JavaScript中==
和===
什麼區別? 我也看到過!=
和!==
運算符。 還有更多這樣的運營商嗎? html
===
和!==
是嚴格的比較運算符: java
JavaScript具備嚴格和類型轉換相等性比較。 爲了
strict
相等,要比較的對象必須具備相同的類型,而且: spa
- 當兩個字符串在相同位置具備相同的字符序列,相同的長度和相同的字符時,它們嚴格相等。
- 當兩個數字在數值上相等時(具備相同的數值)嚴格相等。
NaN
不等於任何東西,包括NaN
。 正零和負零彼此相等。- 若是兩個布爾操做數都爲true或均爲false,則它們嚴格相等。
- 若是兩個對象引用相同的
Object
則它們嚴格相等。Null
和Undefined
類型爲==
(但不是===
)。 [即(Null==Undefined
)爲true
但(Null===Undefined
)爲false
]
比較運算符-MDC code
在這裏看看: http : //longgoldenears.blogspot.com/2007/09/triple-equals-in-javascript.html htm
3個等號表示「沒有類型強制的平等」。 使用三重等於,值的類型也必須相等。 對象
0 == false // true 0 === false // false, because they are of a different type 1 == "1" // true, automatic type conversion for value only 1 === "1" // false, because they are of a different type null == undefined // true null === undefined // false '0' == false // true '0' === false // false