js 获取当月第一天和最后一天
时间: 2024-09-29 11:15:47 浏览: 42
在JavaScript中,获取当前月份的第一天和最后一天可以使用`Date`对象以及一些日期操作方法。以下是简单的步骤:
1. **获取当前日期**:
```javascript
const today = new Date();
```
2. **设置月份为0(即上个月的最后一个月,因为月份是从0开始计数的)**:
```javascript
today.setMonth(today.getMonth() - 1);
```
或者直接设置到当前月份的第一天:
```javascript
today.setDate(1);
```
3. **计算上个月的第一天(假设每个月都有31天)**:
```javascript
const firstDayOfPrevMonth = new Date(today.getFullYear(), today.getMonth());
```
4. **获取当前月份的实际天数**:
```javascript
const lastDayOfMonth = new Date(today.getFullYear(), today.getMonth() + 1, 0); // 加1是因为我们要取下个月的第一天
lastDayOfMonth.setDate(lastDayOfMonth.getDate()); // 将日子设为0,获取的是这个月的最大日期
```
现在,`firstDayOfPrevMonth`就是上个月的第一天,`lastDayOfMonth`就是当前月份的最后一天。
相关问题
前端获取当月日历上的第一天和最后一天
你可以使用 JavaScript 中的 Date 对象来获取当月日历上的第一天和最后一天。具体实现方法如下:
```javascript
// 获取当月第一天
const firstDayOfMonth = new Date();
firstDayOfMonth.setDate(1);
// 获取当月最后一天
const lastDayOfMonth = new Date();
lastDayOfMonth.setMonth(lastDayOfMonth.getMonth() + 1);
lastDayOfMonth.setDate(0);
```
上述代码中,我们首先创建了一个 Date 对象,并将其设置为当前时间。然后,我们使用 setDate 方法将日期设置为 1,从而获取当月的第一天。接着,我们再创建一个 Date 对象,并将其月份设置为下个月的第一天,然后将日期设置为 0,从而获取当月的最后一天。
这样,我们就可以使用 firstDayOfMonth 和 lastDayOfMonth 变量来获取当月日历上的第一天和最后一天了。
用js获取当前月份的第一天和最后一天,只获取年月日字符串
在JavaScript中,你可以使用`Date`对象的内置方法来获取当前月份的第一天和最后一天,然后将其格式化为字符串。以下是一个示例:
```javascript
// 获取当前日期
const today = new Date();
// 获取当前月份
const month = today.getMonth() + 1; // 注意月份从0开始计数,所以加1
// 创建一个新的Date对象,设置为当月第一天
const firstDayOfMonth = new Date(today.getFullYear(), month - 1, 1);
// 创建一个新的Date对象,设置为当月最后一天
let lastDayOfMonth;
if (month === 12) { // 如果是12月,需要考虑是否跨年
lastDayOfMonth = new Date(today.getFullYear() + 1, 0, 0);
} else {
lastDayOfMonth = new Date(today.getFullYear(), month, 0);
}
// 格式化日期为字符串
const formatDate = date => `${date.getFullYear()}-${formatNumber(date.getMonth() + 1)}-${formatNumber(date.getDate())}`;
function formatNumber(num) {
return num < 10 ? `0${num}` : `${num}`;
}
// 输出结果
console.log('本月第一天:', formatDate(firstDayOfMonth));
console.log('本月最后一天:', formatDate(lastDayOfMonth));
```
在这个例子中,`firstDayOfMonth`将存储的是格式化的“YYYY-MM-DD”形式的当前月份第一天,`lastDayOfMonth`则存储的是当前月份最后一天。
阅读全文