我正在检查日期格式是否有效。为什么这种格式有效?
alert(moment('16-jun-199', 'DD-MMM-YYYY').isValid())
为什么它使我为真。应该为假。为什么?
这是我的代码
http://plnkr.co/edit/ZH2kjC9QWwbdLwmvH2Tp?p=preview
我在哪里做错.formate应该是'DD-MMM-YYYY'
最佳答案
你可以试试这个
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
资料来源:https://momentjs.com/docs/