一、java版本(依赖了hutool工具包的DateUtil类)
// DateUtil 来自 hutool工具的maven包 <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.6.3</version>
// 都是以每月1号开始
String startTimeStr = "2020-08-01 00:00:00";
String endTimeStr = "2021-08-01 00:00:00";
Date startTime = DateUtil.parse(startTimeStr).toJdkDate();
Date endTime = DateUtil.parse(endTimeStr).toJdkDate();
Calendar calendar = Calendar.getInstance();
calendar.setTime(startTime);
calendar.add(Calendar.MONTH,1);
while (calendar.getTime().getTime()<=endTime.getTime()){
System.out.println(DateUtil.format(startTime,"yyyy-MM-dd HH:mm:ss")+" ==> " + DateUtil.format(calendar.getTime(),"yyyy-MM-dd HH:mm:ss"));
startTime=calendar.getTime();
calendar.add(Calendar.MONTH,1);
}
二、js版本(使用了momentjs的npm包)
import * as moment from 'moment'
或者
import moment from 'moment'
注意:不同版本的momentjs的引入方式可能会不一样。momentjs官网应该有说明,此处使用的是第二种。。。
var startTimeStr = '2020-08-01 00:00:00'
var endTimeStr = '2021-08-01 00:00:00'
var date1 = moment(startTimeStr)
var date2 = moment(endTimeStr)
while (date2.diff(date1, 'day') > 1) {
var str = date1.format('YYYY年MM月')
console.log(str)
date1.add(1, 'months')
}