【发布时间】:2020-07-22 10:01:00
【问题描述】:
我的 javascript 很糟糕,我是 C# 开发人员,但我们到了。所以我需要在开始年份和月份到结束年份和月份之间的每个月循环。
startMonth 和 startYear 将始终分别为 1 和 2010。
我目前有以下解决方案:
//Get the current year and month
let currentTime = new Date();
let currentYear = currentTime.getFullYear();
let currentMonth = currentTime.getMonth() + 1;
//Set starting year and month
let startYear = 2010;
let startMonth = 1;
//Loop through the years and months
for (let i = startYear; i <= currentYear; i++){
if (i === currentYear ){
for (let k = 1; k <= currentMonth; k++){
//Do work
}
} else {
for (let j = startMonth; j <= 12; j++){
//Do work
}
}
}
有人有更好的解决方案吗?我觉得这真的很笨拙。我不介意使用第三方软件包,所以如果片刻或其他东西可以使用,那么我会使用它。
【问题讨论】:
-
它不仅笨重 -> 不正确。如果 startMonth 不是 1,则所有不是 startYear 或 currentYear 的年份将只获取从 startMonth 开始的月份。
-
对不起,应该提到 startMonth 将始终为 1。将更新问题。
-
使用第三方软件包,这可能是一个干净的解决方案:stackoverflow.com/a/30465709/9150652
-
正常日期也可以这样做:stackoverflow.com/questions/5645058/…
-
你可以使用moment模块。 stackoverflow.com/questions/19705003/…这对你有帮助
标签: javascript node.js