前端使用moment.js获取当月所有的日期
时间: 2024-02-24 10:55:16 浏览: 198
可以使用moment.js库中的`moment()`函数获取当前时间,然后使用`.startOf('month')`方法获取当前月份的第一天,再使用`.endOf('month')`方法获取当前月份的最后一天,最后使用`.clone()`和`.add()`方法在循环中逐个增加日期,并使用`.format()`方法将日期格式化为字符串,从而获取当月所有的日期。
代码示例:
```javascript
var startDate = moment().startOf('month'); // 当月第一天
var endDate = moment().endOf('month'); // 当月最后一天
var currentDate = startDate.clone(); // 复制当前日期
while (currentDate.isSameOrBefore(endDate)) {
console.log(currentDate.format('YYYY-MM-DD')); // 输出格式为:2022-01-01、2022-01-02、2022-01-03、...
currentDate.add(1, 'days'); // 增加一天
}
```
这样就能够获取到当月所有的日期了。
相关问题
前端使用moment.js获取上个月所有的日期
可以使用moment.js的subtract()方法和endOf()方法来获取上个月的所有日期。
可以先获取当前日期的上一个月,然后使用endOf()方法获取该月的最后一天,再使用subtract()方法从最后一天开始往前推算获取每一天的日期。
以下是代码示例:
```javascript
// 获取上个月的日期范围
var lastMonth = moment().subtract(1, 'month');
var startDate = lastMonth.clone().startOf('month');
var endDate = lastMonth.clone().endOf('month');
// 获取上个月每一天的日期
var currentDate = startDate.clone();
var datesArray = [];
while (currentDate.isSameOrBefore(endDate)) {
datesArray.push(currentDate.format('YYYY-MM-DD'));
currentDate.add(1, 'day');
}
console.log(datesArray);
```
输出结果为:
```
[
"2021-09-01",
"2021-09-02",
"2021-09-03",
"2021-09-04",
"2021-09-05",
"2021-09-06",
"2021-09-07",
"2021-09-08",
"2021-09-09",
"2021-09-10",
"2021-09-11",
"2021-09-12",
"2021-09-13",
"2021-09-14",
"2021-09-15",
"2021-09-16",
"2021-09-17",
"2021-09-18",
"2021-09-19",
"2021-09-20",
"2021-09-21",
"2021-09-22",
"2021-09-23",
"2021-09-24",
"2021-09-25",
"2021-09-26",
"2021-09-27",
"2021-09-28",
"2021-09-29",
"2021-09-30"
]
```
moment 取年月日_前端使用moment.js获取当前月份1号
你可以使用 Moment.js 的 startOf 方法来获取当前月份的第一天,然后使用 format 方法来格式化日期字符串,如下所示:
```javascript
const now = moment(); // 获取当前时间
const firstDayOfMonth = now.startOf('month').format('YYYY-MM-DD'); // 获取当前月份的第一天
console.log(firstDayOfMonth); // 输出:2021-09-01
```
这样就可以得到当前月份的第一天日期字符串了。
阅读全文