使用 JavaScript 将日期增加 1 个月

使用 JavaScript 将日期增加 1 个月

Increment a Date by 1 Month using JavaScript

将日期增加 1 个月:

  1. 使用该getMonth()方法获取给定日期所在月份的值。
  2. 使用该setMonth()方法将月份递增1.
索引.js
const date = new Date(); date.setMonth(date.getMonth() + 1); // ✅ Increment Date by 1 month console.log(date); // 👉️ Sun Feb 27 2022 (today is 27 Jan) // ✅ Set date to 1st day of next month const date2 = new Date(); const firstDayNextMonth = new Date(date2.getFullYear(), date.getMonth(), 1); console.log(firstDayNextMonth); // 👉️ Tue Feb 01 2022 (today is 27 Jan)

第一个示例显示如何1按月递增日期。

getMonth
()
方法返回一个介于
0(January) 和11(December) 之间的整数,表示给定日期中的月份。

请注意,该值是从零开始的,例如 January = 0、February = 1、March = 2 等。

setMonth
()
方法采用一个从零开始的值来表示一年中的月份(0 = 一月,1 = 二月,等等)并设置日期值。

Date如果递增月份将我们推到下一年,JavaScript对象会自动处理一年的滚动。

索引.js
const date = new Date('2022-12-21'); date.setMonth(date.getMonth() + 1); // ✅ Increment Date by 1 month console.log(date); // 👉️ Sat Jan 21 2023

我们创建了Date一个值为 12 月 21 日的对象,并1按月递增日期,这将我们推到了 2023 年 1 月。

请注意,该setMonth方法会改变Date 调用它的对象。如果您不想Date就地更改,可以在调用该方法之前创建它的副本。
索引.js
const date = new Date('2022-03-29'); const dateCopy = new Date(date.getTime()); dateCopy.setMonth(dateCopy.getMonth() + 1); console.log(dateCopy); // 👉️ Fri Apr 29 2022 console.log(date); // 👉️ Tue Mar 29 2022 (didn't change original)

getTime方法返回从

1970 年 1 月 1 日 00:00:00 到给定日期之间经过的毫秒数。

We used the timestamp to create a copy of the Date object, so we don’t mutate it in place when calling the setMonth method.

Copying the date is quite useful when you have to use the original Date object
in other places in your code.

If you need to increment the month of the date and set the day of the month value to a specific day, use the Date() constructor instead.
index.js
// ✅ Set date to 1st day of next month const date2 = new Date(); const firstDayNextMonth = new Date(date2.getFullYear(), date.getMonth(), 1); console.log(firstDayNextMonth); // 👉️ Tue Feb 01 2022 (today is 27 Jan)

The 3 parameters we passed to the Date() constructor are – the year, month and
day of the month.

We incremented the month by 1 and set the day of the month value to 1.

If you need to set the day of the month value to a different day, simply change
the third parameter.

You can also use the getDate() method to get the day of the month for the
given date.

index.js
const date = new Date('2022-03-29'); // 👇️ 29 console.log(date.getDate());