获取一个月的最后一天
Get the Last Day of a Month in JavaScript
要获取一个月的最后一天,请使用Date()
构造函数创建一个日期对象,将年、月 + 1 和0
日作为参数传递给它。该Date
对象将包含该月的最后一天。
索引.js
function getLastDayOfMonth(year, month) { return new Date(year, month + 1, 0); } // 👇️ Last Day of CURRENT MONTH const date = new Date(); const lastDayCurrentMonth = getLastDayOfMonth( date.getFullYear(), date.getMonth(), ); console.log(lastDayCurrentMonth); // 👉️ Mon Oct 31 2022 // 👇️ Last day of January 2025 const lastDayJan = getLastDayOfMonth(2025, 0); console.log(lastDayJan); // 👉️ Fri Jan 31 2025
我们将以下 3 个参数传递给
Date() 构造函数:
- 那一年
- 月份 – 注意我们添加
1
到月份以获得代表下个月的值,这通过将日期设置为 来平衡0
。 - 日期 – 将日期设置为
0
给我们上个月的最后一天。
我们使用
Date.getFullYear
方法获取当前年份。
我们还使用了
Date.getMonth
方法来获取当前月份。
月份在 JavaScript 中是从零开始的,意思
0
是一月和十二月。 11
我们在函数中添加1
月份值的原因是因为我们希望1
通过为对象指定0
日期参数来获取表示下个月和回滚日期的Date
值。
前
1
一个月1
后一天让我们得到特定月份的最后一天。该getLastDayOfMonth
函数可用于获取任何月份的最后一天,这里有一些例子。
索引.js
function getLastDayOfMonth(year, month) { return new Date(year, month + 1, 0); } console.log(getLastDayOfMonth(2027, 0)); // 👉️ Sun Jan 31 2027 console.log(getLastDayOfMonth(2028, 1)); // 👉️ Tue Feb 29 2028 console.log(getLastDayOfMonth(2029, 2)); // 👉️ Sat Mar 31 2029
要记住的棘手的事情是 – 月份是从零开始的,从0
(一月)到11
(十二月)。
如果你想让你的代码更具可读性,你可以将月份的值提取到一个变量中。
索引.js
function getLastDayOfMonth(year, month) { return new Date(year, month + 1, 0); } const january = 0; console.log(getLastDayOfMonth(2027, 0)); // 👉️ Sun Jan 31 2027