如何在moment.js中以以下格式获取当前月份的第一天和最后一天和时间:
2016-09-01 00:00
我可以像这样获得当前的日期和时间: 时刻()。格式('YYYY-MM-DD h:m'),以上述格式输出。
然而,我需要得到当前月的第一天和最后一天的日期和时间,有办法做到这一点吗?
编辑: 我的问题与这个问题不同,因为它要求用户已经拥有的给定月份,而我要求的是当前月份以及日期的特定格式,这在另一个所谓的“副本”中没有提到。
如何在moment.js中以以下格式获取当前月份的第一天和最后一天和时间:
2016-09-01 00:00
我可以像这样获得当前的日期和时间: 时刻()。格式('YYYY-MM-DD h:m'),以上述格式输出。
然而,我需要得到当前月的第一天和最后一天的日期和时间,有办法做到这一点吗?
编辑: 我的问题与这个问题不同,因为它要求用户已经拥有的给定月份,而我要求的是当前月份以及日期的特定格式,这在另一个所谓的“副本”中没有提到。
当前回答
假设您正在使用日期范围选择器来检索日期。为了得到你想要的,你可以做一些类似的事情。
$('#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')}
其他回答
我遇到了一些问题,因为我没有意识到moment(). endof()会改变输入日期,所以我使用了这个方法。
let thisMoment = moment(); 让enfmonth = moment(thisMoment).endOf('month'); 让starttofmonth = moment(thisMoment).startOf('month');
本月的第一天和最后一天在moment.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);
如果有人错过了对原始问题的评论,你可以使用内置方法(从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();
假设您正在使用日期范围选择器来检索日期。为了得到你想要的,你可以做一些类似的事情。
$('#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')}