【发布时间】:2019-02-13 12:56:52
【问题描述】:
我有一个日期字段,如果 month 是 unknown,则该字段接受。我根据输入的日期和当前的日期和时间计算age。
var birthDate = new Date("12 UNK 1995");
var now = new Date();
var age = now.getFullYear() - birthDate.getFullYear();
document.write("Your Age is: " + age);
如果运行这会引发 NaN 错误。我认为是因为日期格式无效。
我有什么方法可以计算age,即使 month 是 unknown 基于 year 仅以任何形式日期格式?
【问题讨论】:
-
日期字符串的来源是什么?如果它不是有效的格式,则需要对其进行解析。当然,当月份未知时,准确性会丢失
-
是的,如果解析表明它的格式无效。
-
我的意思是你需要把那个字符串分解成它的部分并且只使用有效的部分。不需要使用
new Date -
你是在问如何解析
Strings的模式"DD UNK YYYY",还是你真的在问“任何类型的日期格式”?前者我们可以回答,后者是不可能的。 -
@MaxVollmer 我正在询问如何解析模式“DD UNK YYYY”
标签: javascript c# regex typescript datetime