使用 JavaScript 将日期增加 1 个月
Increment a Date by 1 Month using JavaScript
将日期增加 1 个月:
- 使用该
getMonth()
方法获取给定日期所在月份的值。 - 使用该
setMonth()
方法将月份递增1
.
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对象会自动处理一年的滚动。
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
就地更改,可以在调用该方法之前创建它的副本。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 到给定日期之间经过的毫秒数。
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.
Date()
constructor instead.// ✅ 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.
const date = new Date('2022-03-29'); // 👇️ 29 console.log(date.getDate());