有谁知道有什么方法可以检查字符串是否是有效日期?我试图阻止无效日期,同时不强制任何类型的日期格式。基本上问题是这样的:
!!Date.parse('hello 1') === true
Javascript 可以从该字符串中计算出日期,因此,它是一个日期。我宁愿不是这样。有人吗?
最佳答案
去掉单词周围的空格会让你有多接近?它至少清除了“hello 1”之类的内容。
Date.parse('hello 1'.replace(/\s*([a-z]+)\s*/i, "$1")); // NaN
Date.parse('jan 1'.replace(/\s*([a-z]+)\s*/i, "$1")); // Valid
[更新] 好的,我们将替换字母和数字之间的所有非字母数字:
replace(/([a-z])\W+(\d)/ig, "$1$2")
关于javascript - 检查任何给定字符串是否是有效日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28594455/