js 获取当月第一天和最后一天
时间: 2024-09-29 15:15:47 浏览: 94
在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
function getFirstDayOfMonth() {
const today = new Date();
const year = today.getFullYear();
const month = today.getMonth();
return new Date(year, month, 1).toISOString().split('T')[0];
}
```
这段代码会返回一个表示本月第一天的 ISO8601 字符串格式[^1]。
为了得到当月的最后一天,则可以这样做:
```javascript
function getLastDayOfMonth() {
const today = new Date();
const nextMonthFirstDay = new Date(today.getFullYear(), today.getMonth() + 1, 1);
const lastDay = new Date(nextMonthFirstDay - 1);
return lastDay.toISOString().split('T')[0];
}
```
这里先计算下个月的第一天,再减去一天即为本月的最后一天。同样地,这也会给出一个ISO字符串形式的结果[^2]。
另外一种更简洁的方式是利用 `getDate()` 和设置日期超出部分自动处理的功能来简化上述逻辑:
```javascript
// 获取当月第一天
const firstDayOfCurrentMonth = new Date(new Date().getFullYear(), new Date().getMonth(), 1);
// 获取当月最后一天
const lastDayOfCurrentMonth = new Date(new Date().getFullYear(), new Date().getMonth() + 1, 0);
```
这两种方法都可以有效地取得所需的日期信息,并且适用于大多数场景下的需求。
阅读全文
相关推荐

















