momentJS:date(0)返回上个月的最后一天

时间:2016-11-02 09:34:59

标签: momentjs

我想得到本月的最后一天。 但是当我使用date(0)时,它将返回上个月的最后一天。 为什么?它是否相对于现在?

var time=moment().tz("America/New_York");
console.log(new Date(time));
console.log(moment().tz("America/New_York").date(0));

输出:

  

Wed Nov 02 2016 15:01:43 GMT + 0530(IST)
2016年10月31日星期一15:01:43   GMT + 0530(IST)

2 个答案:

答案 0 :(得分:3)

您可以使用endOf()函数来结束月份,如以下示例所示:



var time = moment.tz("America/New_York");
var endOfMonth = time.endOf('month');
console.log(endOfMonth.format());
console.log(endOfMonth.date());

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.15.2/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.7/moment-timezone-with-data-2010-2020.min.js"></script>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

var startDate = moment()。subtract('months',1).endOf('month')