我的用户可以使用日期更改网址。
当我输入url`s date params到2015-02-31并且我创建了一个momentJS对象时,我得到了一个类似于2015年3月3日的日期。
即使我认为2015-02-31及其月份'02'实际上是javascript的第三个月,那么创建后的日期应该是2015年3月31日而不是2015年3月3日
那么为什么错误的约会?
答案 0 :(得分:2)
二月只有28天。 当您输入2015-02-31时,它是3天(31-28)到下个月,即3月, 这就是为什么日期是2015年3月3日
答案 1 :(得分:2)
这称为JavaScript提供的“宽松”日期解析。你不能轻易地禁用它,但是,有一些方法,例如, http://www.gitshah.com/2010/08/how-to-accept-only-strict-dates-using.html
答案 2 :(得分:0)
我找到了问题的答案:
在momentJS网站上使用其中一个可能的日期字符串仍然会在2015年3月3日创建日期,但在内部由于_i“2015 2 31”,isValid会返回false,这正是我需要的!