微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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它就不再执行…

enter image description here

最佳答案
它失败是因为您将年份转换为字符串,而不是在数字上使用字符串操作.控制台中的错误应该清楚地说明它.

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中.

原文地址:https://www.jb51.cc/js/429289.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐