我正在阅读我拥有的旧csv文件中的值。这个文件有很多错误的数据,它应该只有时间值,但有时它上面有日期值。
我试图用moment.js
来确定时间,但是当我运行此代码时:
const moment = require('moment');
console.log(moment('19/07/9130','hh:mm').isValid());
它返回true
,我做错了什么?
答案 0 :(得分:0)
1。
首先,您在时刻函数中提供了错误的格式,您正在以DD/MM/YYYY
格式传递数据并定义格式hh:mm
。你应该传递正确的格式。
2。
19/07/9130
是有效期为9130
且有效的未来年份的有效日期。如果要限制最长年份,可以使用isBefore
方法
var mydate = moment('19/07/9130', 'DD/MM/YYYY');
var isValid = mydate.isValid() && mydate.isBefore('2050-01-01');
答案 1 :(得分:0)
阅读更多Moment.js
docs,我发现第三个参数使Moment使用严格的解析。
const moment = require('moment');
console.log(moment('19/07/9130','hh:mm',true).isValid());
这很好用!