【发布时间】:2019-09-03 15:35:39
【问题描述】:
我有这个问题。我想将 TODAY 与日期(月、日、年)进行比较,并以天或年为单位返回年龄,具体取决于差异是小于 1 年(返回天数)还是大于(返回年)。
我得到奇怪的结果。
这是我的代码:
function tellAge(month, day, year) {
var d = new Date();
var years = d.getFullYear()-year;
var days = d.getDay()-day;
if ((d.getFullYear()-year)>1) {
return "You are " + days + " days old"
} else {
return "You are " + years + " year old"
}
}
tellAge(3,11,2017)
这个:tellAgeTest(3,11,2017) 应该返回
你2岁了
但没有。
【问题讨论】:
-
看看你的 if 语句。你说的是
if years > 1 return days old。你把它翻了。在这种情况下应该做年份声明。还有一个挑剔的,您将年份计算到您的years变量中,但您没有使用它。让你的 if 语句if(years > 1)。当您得到不正确的结果时,以供将来参考,请发布您得到的结果。在不知道错误是什么的情况下很难帮助解决大多数问题 -
它返回了什么?
-
"你已经 -9 天了"
标签: javascript function date