前端之家收集整理的这篇文章主要介绍了
JavaScript – 当if语句为true时,代码不会执行?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我为用户提供了3个不同的输入 – 日/月/年,我正在尝试运行if语句来检查月份是1月/ 2月(1还是2),然后是否从年份中减去1 .我的if语句是:
if (month == 1 || month == 2) {
if (month == 1) {
year = Number(year) - 1;
}
else if (month == 2) {
year = Number(year) - 1;
}
}
这是我第一次尝试使用javascript,这非常令人沮丧!
你可以看到我的代码在我有月份= 3时运行,但是一旦我将其更改为1或2它就不再执行…
最佳答案
它失败是因为您将年份转换为字符串,而不是在数字上使用字符串操作.控制台中的
错误应该清楚地说明它.
year = Number(year) - 1
...
var century = year.substring(0,2)
因此,如果您要对其执行字符串操作,则需要将数字转换回字符串.
所以要么你做
year = (Number(year) - 1).toString()
要么
var century = year.toString().substring(0,2)
最后,错误“Uncaught TypeError:year.substring不是函数”应该在您的开发人员console中.