我的 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
}
}
}
有人有更好的解决方案吗?我感觉这真的很笨拙。我不介意使用第三方软件包,所以如果有时间或有什么东西可以工作,那么我会使用它。
最佳答案
这就是你想要的:
const start = moment.utc('2018-12');
const end = moment.utc('2020-02');
const year = end.diff(start, 'years');
const month = end.diff(start, 'months')
console.log(start, end);
console.log(year, month);// 1 14
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.27.0/moment.min.js"></script>
关于javascript - 循环遍历两年之间的每个月,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63031660/