2013-02-19 73 views

回答

1

if測試,obj.length是數字,而不是NaN。右側始終是一個數字(或NaN,如果obj.length不能被解釋爲數字)。如果obj.length也是一個數字,它只會在左邊===

請注意,如果obj.length是一個數字外觀字符串,則使用isNaN將不起作用;即isNan("3")返回false。還請注意,NaN === NaNfalseNaN從來沒有===任何東西。

+1

那麼比較同一個對象的.length屬性有什麼意義呢?一次是'強制編號',一次不是?這完成了什麼? – alnafie 2013-02-19 06:36:27

+0

@alnafie - 我必須查看代碼才能知道,但是我最初的猜測是它會繞過代碼,要麼需要'obj.length'是一個數字,要麼是一些昂貴的代碼來計算'obj.length如果它已經正確設置,應該跳過。 – 2013-02-19 06:42:03

相關問題