switch语句,不执行任何case
Switch statement, no case is executed
我正在尝试编写一个函数来计算已经过去了多少天,并根据该值更新变量并提醒该字符串。
我不断收到 "undefined"。我的 switch 语句是否正确?
var d = new Date();
var o = new Date(2015, 12, 7);
var todayDate = d.getDate();
var startDate = o.getDate();
var twelveDays = todayDate - startDate;
switch (twelveDays) {
case "0":
var calories = '10';
break;
case "1":
var calories = '20';
break;
case "2":
var calories = '30';
break;
case "3":
var calories = '40';
break;
case "4":
var calories = '50';
break;
case "5":
var calories = '60';
break;
case "6":
var calories = '70';
break;
case "7":
var calories = '80';
break;
case "8":
var calories = '90';
break;
case "9":
var calories = '100';
break;
case "10":
var calories = '110';
break;
case "11":
var calories = '120';
break;
case "12":
var calories = '130';
break;
}
alert(calories);
twelveDays
是一个整数。在您的 switch 语句中,您正在检查一个字符串。没有默认子句,因此它会抛出错误 undefined
。
改成这样:
switch (twelveDays) {
case 0:
var calories = '10';
break;
case 1:
var calories = '20';
break;
case 2:
var calories = '30';
break;
}
此外,最好添加一个默认子句以防万一
我刚刚更新了你的 jsfiddle。
http://jsfiddle.net/x28a1Lhc/2/
当你使用switch
时,最好添加默认大小写。
var twelveDays = todayDate - startDate;
returns 整数。
您需要将 switch 中的大小写匹配为整数。
我正在尝试编写一个函数来计算已经过去了多少天,并根据该值更新变量并提醒该字符串。
我不断收到 "undefined"。我的 switch 语句是否正确?
var d = new Date();
var o = new Date(2015, 12, 7);
var todayDate = d.getDate();
var startDate = o.getDate();
var twelveDays = todayDate - startDate;
switch (twelveDays) {
case "0":
var calories = '10';
break;
case "1":
var calories = '20';
break;
case "2":
var calories = '30';
break;
case "3":
var calories = '40';
break;
case "4":
var calories = '50';
break;
case "5":
var calories = '60';
break;
case "6":
var calories = '70';
break;
case "7":
var calories = '80';
break;
case "8":
var calories = '90';
break;
case "9":
var calories = '100';
break;
case "10":
var calories = '110';
break;
case "11":
var calories = '120';
break;
case "12":
var calories = '130';
break;
}
alert(calories);
twelveDays
是一个整数。在您的 switch 语句中,您正在检查一个字符串。没有默认子句,因此它会抛出错误 undefined
。
改成这样:
switch (twelveDays) {
case 0:
var calories = '10';
break;
case 1:
var calories = '20';
break;
case 2:
var calories = '30';
break;
}
此外,最好添加一个默认子句以防万一
我刚刚更新了你的 jsfiddle。 http://jsfiddle.net/x28a1Lhc/2/
当你使用switch
时,最好添加默认大小写。
var twelveDays = todayDate - startDate;
returns 整数。
您需要将 switch 中的大小写匹配为整数。