我正在尝试为8月31日创建一个moment
日期,但是在任何一个月的第31天都存在一些问题。
我正在创建它moment().date(31).month(7)
8月1日归我。
当我使用moment().date(30).month(7)
时,我会像预期的那样获得8月30日。
如何为31日创建moment
日期?
答案 0 :(得分:2)
来自the documentation for the .date
method:
注意:如果您链接多个操作来构建日期,则应该从一年,一个月,然后一天等开始。否则您可能会得到意想不到的结果,例如当天= 31且当前月只有30天(这同样适用于原生JavaScript日期操作),返回的日期将是下个月的第1天。
要扩展,它给你8月1日的原因是因为它首先创建了一个9月31日的日期(它不存在,所以它将持续到10月1日),然后下一个链接的调用将月份设置为八月。