使用JavaScript获取一个月的第一天或最后一天
通常情况下,获取一个月的第一天非常简单。但是如何获取一个月的最后一天呢?下面是使用JavaScript同时实现这两个功能的方法。
获取一个月的第一天
给定任何Date
对象,你可以使用Date.prototype.getFullYear()
和Date.prototype.getMonth()
方法从给定的日期中获取当前年份和月份。为了获取一个月的第一天,你只需要使用这些方法创建一个新的Date
对象,并将日期设置为1
。
const firstDateOfMonth = (date = new Date()) =>
new Date(date.getFullYear(), date.getMonth(), 1);
firstDateOfMonth(new Date('2015-08-11')); // '2015-08-01'
获取一个月的最后一天
为了获取一个月的最后一天,我们可以在上面的代码基础上使用一个巧妙的技巧。我们将日期设置为0
,这将给我们上个月的最后一天。为了使这个方法生效,我们还需要将月份加1。
const lastDateOfMonth = (date = new Date()) =>
new Date(date.getFullYear(), date.getMonth() + 1, 0);
lastDateOfMonth(new Date('2015-08-11')); // '2015-08-31'