Javascript Switch - 没有结果,甚至是默认?

时间:2014-10-11 23:40:54

标签: javascript

使用Chrome的控制台/调试器:

在if语句中,quickChallengeResponse显示未定义的

并且console.dir(quickChallengeTimer)显示30。

然而,在我的页面上,没有打印,甚至没有错误 - 而且quickChallengeTimer也没有更改为60,因为它被告知在30的情况下执行。

我的错误是什么?感谢。

var quickChallengeTimer = 30; var quickChallengeQuestion; 
var quickChallengeAnswer; var quickChallengeResponse;

    function quickChallenge(quickChallengeTimer, 
quickChallengeQuestion, quickChallengeAnswer) {

        if (typeof quickChallengeResponse == undefined) {
            switch (quickChallengeTimer) {

                case 30:
                    quickChallengeTimer = "60";
                    quickChallengeResponse = null;
                    console.write("now60");
                    break;

                case 60:
                    quickChallengeTimer = "120";
                    quickChallengeResponse = null;
                    console.write("now120");
                    break;

                default:
                console.write("Error");
                break;
            }
        }

        console.dir(quickChallengeTimer);
    }



quickChallenge(quickChallengeTimer);

1 个答案:

答案 0 :(得分:0)

typeof返回一个字符串。您需要将其与'undefined'

进行比较
if (typeof quickChallengeResponse == 'undefined') {
            switch (quickChallengeTimer) {

另外,正如评论中指出的那样,console.write不存在。使用console.log

jsfiddle