2010-06-02 79 views
3

它通常已知的是爲什麼typeof null在switch語句中行爲不當?

typeof null 

返回 「對象」。

不過,我有一段代碼,看起來像這樣:

switch(typeof null){ 
    case "object": 
     1; 
    default: 
     3; 
} 

此代碼返回3.

爲什麼如使用typeof空返回「對象」不會導致的第一個分支案件陳述被執行?

回答

9

你錯過break對於第一種情況 - 因此它落空至default情況下,返回3

switch(typeof null){ 
    case "object": 
     1; 
     break; 
    default: 
     3; 
} 
+0

一個經典的錯誤! 謝謝 – dta 2010-06-02 05:31:11

相關問題