pra*_*ant 19 javascript validation timestamp
如何使用javascript和时间戳验证时间戳以接受多种格式,例如YYYY-MM-DD HH:mm:ss.S,YYYY-MM-DD HH:mm:ss AM/PM.
Jør*_*gen 44
您可以验证字符串是否是这样的有效时间戳:
var valid = (new Date(timestamp)).getTime() > 0;
var valid = (new Date('2012-08-09')).getTime() > 0; // true
var valid = (new Date('abc')).getTime() > 0; // false
Run Code Online (Sandbox Code Playgroud)
var d = Date.parse(your_timestamp);
Run Code Online (Sandbox Code Playgroud)
d应该是一个有效的数字而不是 NaN。
参考: http: //www.w3schools.com/jsref/jsref_parse.asp
@Jørgen 的解决方案很好,但是如果您在January 1, 1970时间戳之前有一个日期,它将是一个负数,但也是一个有效的时间戳。
function isValidTimestamp(_timestamp) {
const newTimestamp = new Date(_timestamp).getTime();
return isNumeric(newTimestamp);
}
function isNumeric(n) {
return !isNaN(parseFloat(n)) && isFinite(n);
}
Run Code Online (Sandbox Code Playgroud)
我从以下 SO 答案中获取的数字验证。
例如:
isValidTimestamp('12/25/1965') // true
Run Code Online (Sandbox Code Playgroud)