首先发布在这里。我真的很好奇为什么下面的函数没有返回正确的月/日/年答案,而只是返回10.
如果我从var月中删除+1,它会返回正确的一切,除非它落后一个月。
我开始学习CS并且非常感谢任何帮助。如果我在函数外部运行它,它会返回正确的答案。
function todaydate() {
var today = new Date();
var month = today.getMonth()+1;
var day = today.getDate();
var year = today.getFullYear();
if (month < 10) {
month = "0" + month
} else {
return month
}
return console.log(month + "/" + day + "/" + year)
}
希望这个问题有助于更广泛的受众了解功能如何实际运行。
编辑:谢谢大家,这很有道理。我非常感谢你所有迂腐的答案和观点。答案 0 :(得分:1)
如果月份> = 10,则返回月份
} else {
return month
}
否则你返回
return console.log(month + "/" + day + "/" + year)
返回console.log可能不会返回任何内容
当然,你的功能是返回不一致的东西。
但我也建议你使用优秀的时刻
它可以在一行中做你想做的事:
moment().format("DD/MM/YYYY");
它使处理日期和时间更容易,更一致
答案 1 :(得分:0)
else
是不必要的。这样做:
function todaydate() {
var today = new Date();
var month = today.getMonth() + 1;
var day = today.getDate();
var year = today.getFullYear();
if (month < 10) {
month = "0" + month
}
return month + "/" + day + "/" + year;
}
console.log(todaydate());
&#13;
或者像这样:
function todaydate() {
var today = new Date();
var month = today.getMonth() + 1;
var day = today.getDate();
var year = today.getFullYear();
if (month < 10) {
month = "0" + month
}
console.log(month + "/" + day + "/" + year);
}
todaydate();
&#13;