为什么typeof null在switch语句中行为异常?

时间:2010-06-02 05:26:36

标签: javascript null switch-statement typeof

众所周知

typeof null

返回“对象”。

但是,我有一段代码如下:

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

此代码返回3.

为什么typeof null返回的“object”不会导致case语句的第一个分支被执行?

1 个答案:

答案 0 :(得分:9)

您在第一种情况下缺少break - 因此它会落到default案例并返回3.

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