moment.js isValid函数无法正常工作

Mik*_*hez 75 javascript jquery date momentjs

我有这个问题......我没有发现任何类似的东西,似乎很奇怪没有人用moment.js验证时间这个问题.

moment('03:55', 'HH:mm').isValid(); //true
moment('03:55jojojo', 'HH:mm').isValid(); //true
moment('03:55jojojo', 'HH:mm',true).isValid(); //true
Run Code Online (Sandbox Code Playgroud)

难道我做错了什么?这是一个例子:

http://jsfiddle.net/vCGAp/145/

Jan*_*mer 167

在你的问题中你写的moment('03:55jojojo', 'HH:mm',true).isValid();返回true.这是不正确的.请再次检查你的jsfiddle.

来自http://momentjs.com/docs/

Moment的解析器非常宽容,这可能会导致不良行为.从版本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
Run Code Online (Sandbox Code Playgroud)

您可以同时使用语言和严格.

moment('2012-10-14', 'YYYY-MM-DD', 'fr', true);
Run Code Online (Sandbox Code Playgroud)

  • 男人,非常感谢你,这个真实的第三个参数,多次拯救了我的生命,只是想说,因为我总是不断回到这个答案. (2认同)