我正在检查日期格式是否有效。为什么这种格式有效?
alert(moment('16-jun-199', 'DD-MMM-YYYY').isValid())
为什么给我以true。应该为false。为什么? 这是我的代码
http://plnkr.co/edit/ZH2kjC9QWwbdLwmvH2Tp?p=preview 我在哪里做错.formate应该是'DD-MMM-YYYY'
答案 0 :(得分:2)
您可以尝试
moment('16-jun-199', 'DD-MMM-YYYY',true).isValid())
注意:用于strict
解析的其他true标志。告诉您不要使用通配符并使用完全匹配。
Moment的解析器非常宽容,这可能导致 意外/意外的行为。
例如,可以观察到以下行为:
moment('2016 is a date', 'YYYY-MM-DD').isValid() //true, 2016 was
matched
从版本2.3.0开始,您可以为最后一个参数指定布尔值 使Moment使用严格的解析。严格解析要求 格式和输入完全匹配,包括分度符。
moment('It is 2012-05-25', 'YYYY-MM-DD').isValid(); // true
moment('It is 2012-05-25', 'YYYY-MM-DD', true).isValid(); // false
moment('2012-05-25', 'YYYY-MM-DD', true).isValid(); // true
moment('2012.05.25', 'YYYY-MM-DD', true).isValid(); // false