我有一个Javascript/NodeJS单元测试,它试图验证无效日期是否引发异常。 代码是这样的:
let inputDate = '1234 56 78';
let useFormat = 'DD MMM YYYY';
try {
let aDate = moment(inputDate, useFormat);
if (isNaN(aDate)){
throw Error("Invalid date: " + inputDate)
}
console.log('date [' + inputDate + '] is valid and parses to [' + aDate.format(useFormat) + ']');
} catch (ex) {
// success
console.log('got ex',ex.toString())
}
控制台输出为:
date [1234 56 78] is valid and parses to 12 Jan 1978
您可以轻松地在 jsbin.com 中运行它以重现错误,抱歉我没有指向它的链接。
我需要做什么才能获得将此日期视为无效日期的时间?
或者,也许,我需要学习什么才能理解日期是有效的。
运行时刻.js在严格模式下将拒绝输入:
let aDate = moment(inputDate, useFormat, true);