时刻js得到本月的第一天和最后一天

Moment js get first and last day of current month

本文关键字:第一天 最后一天 js 时刻      更新时间:2023-09-26

如何在moment.js中以以下格式获取当月的第一天和最后一天以及时间:

2016-09-01 00:00

我可以这样获取当前日期和时间:将以上述格式输出的CCD_ 1。

然而,我需要得到当月第一天和最后一天的日期和时间,有什么办法吗?

编辑:我的问题与这个问题不同,因为它要求用户已经拥有的给定月份,而我要求的是当前月份,以及另一个所谓的"重复"中没有提到的特定日期格式。

如果有人错过了对原始问题的评论,您可以使用内置方法(从Moment 1.7开始工作(:

const startOfMonth = moment().startOf('month').format('YYYY-MM-DD hh:mm');
const endOfMonth   = moment().endOf('month').format('YYYY-MM-DD hh:mm');

还有另一种方法:

var begin = moment().format("YYYY-MM-01");
var end = moment().format("YYYY-MM-") + moment().daysInMonth();

您可以在没有moment.js 的情况下完成此操作

在本机Javascript代码中实现这一点的一种方法:

var date = new Date(), y = date.getFullYear(), m = date.getMonth();
var firstDay = new Date(y, m, 1);
var lastDay = new Date(y, m + 1, 0);
firstDay = moment(firstDay).format(yourFormat);
lastDay = moment(lastDay).format(yourFormat);

momentstartOf((endOf(。。例如:-

moment().startOf('year');    // set to January 1st, 12:00 am this year
moment().startOf('month');   // set to the first of this month, 12:00 am
moment().startOf('week');    // set to the first day of this week, 12:00 am
moment().startOf('day');     // set to 12:00 am today

假设您正在使用日期范围选取器来检索日期。你可以做一些类似的事情来得到你想要的。

$('#daterange-btn').daterangepicker({
            ranges: {
                'Today': [moment(), moment()],
                'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
                'Last 7 Days': [moment().subtract(6, 'days'), moment()],
                'Last 30 Days': [moment().subtract(29, 'days'), moment()],
                'This Month': [moment().startOf('month'), moment().endOf('month')],
                'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
            },
            startDate: moment().subtract(29, 'days'),
            endDate: moment()
        }, function (start, end) {
      alert( 'Date is between' + start.format('YYYY-MM-DD h:m') + 'and' + end.format('YYYY-MM-DD h:m')}

简单地说,我们可以使用daysInMonth((和endOf((

const firstDay = moment('2016-09-15 00:00', 'YYYY-MM-DD h:m').startOf('month').format('D')
const lastDay = moment('2016-09-15 00:00', 'YYYY-MM-DD h:m').endOf('month').format('D')

我遇到了一些问题,因为我没有意识到moment().endOf()会更改输入日期,所以我使用了这种方法。

let thisMoment = moment();
let endOfMonth = moment(thisMoment).endOf('month');
let startOfMonth = moment(thisMoment).startOf('month');

当前月份的第一个和最后一个日期.js

console.log("current month first date");
    const firstdate = moment().startOf('month').format('DD-MM-YYYY');
console.log(firstdate);
console.log("current month last date");
    const lastdate=moment().endOf('month').format("DD-MM-YYYY"); 
console.log(lastdate); 
console.log("current month first date");
    const firstdate = moment().startOf('month').format('DD-MM-YYYY');
console.log(firstdate);
console.log("current month last date");
    const lastdate=moment().endOf('month').format("DD-MM-YYYY"); 
console.log(lastdate);

//这是在MOMENTJS 中获取日期的最简单方法