0
在JavaScript中編寫用於比較的簡單代碼段時,我觀察到一些奇怪的行爲。JavaScript中==和===運算符的確切行爲
案例1:
typeof(window.WHTStatement.DDL_TPTypeID.size()) ==> "number"
typeof(window.WHTStatement.Txt_TPTypeValue.size()) ==> "number"
window.WHTStatement.DDL_TPTypeID.size() == 1 == window.WHTStatement.Txt_TPTypeValue.size()
返回true - 確定
案例2:
window.WHTStatement.DDL_TPTypeID.size() === 1 == window.WHTStatement.Txt_TPTypeValue.size()
返回true - 確定
案例3:
window.WHTStatement.DDL_TPTypeID.size() === 1 === window.WHTStatement.Txt_TPTypeValue.size()
返回false,爲什麼?
案例3究竟發生了什麼?有人可以詳細說明嗎?
這可能有助於http://stackoverflow.com/questions/359494/javascript-vs-does-it-matter-which-equal-operator-i-use/359509#359509 –
這不是「怪異」的行爲; 「怪異」行爲和行爲之間存在着差異,但是你 - 不是其他任何人! - 沒想到。 –