Nodejs检测时间合法性(YYYY-MM-DD HH-MM-SS)

最近需要提供restful API用于提供某时间范围内的数据查询。
即get请求带有startdate 和 enddate这两个参数,所以涉及到需要对日期是否合法进行check
参数形式为:YYYY-MM-DD HH-MM-SS

1 正则表达式

一开始考虑用正则表达式匹配,但发现用正则表达式(check年月日)实现特别复杂,所以就没有采用该方式.

2 使用new Date的error作为判断依据

let test ="2017-12-11 02:08:255";
let test1 = new Date(test);
console.info(test1.toString());
if(test1.toString() === "Invalid Date")
    console.info("check success");

因为check字符串的方式不确定是否会带来什么问题,所以该方案暂时保留

3 使用三方模块validator

var validator = require('validator');
var sd1 ="2018-02-13 12:16:10";
 console.log(validator.isISO8601(sd1));

该模块还提供check email等方式。所以采用该方案。

猜你喜欢

转载自blog.csdn.net/m0_37263637/article/details/80276954