为了账号安全,请及时绑定邮箱和手机立即绑定

如果月份无效,如何从 DOB 计算年龄?

如果月份无效,如何从 DOB 计算年龄?

C#
交互式爱情 2022-01-09 14:40:03
我有接受,如果日期字段一个月是未知的。我根据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即使月份是未知的,仅基于任何日期格式的年份?
查看完整描述

2 回答

?
翻阅古今

TA贡献1780条经验 获得超5个赞

如果月份未知,则以编程方式将其设置为年中的正常方式 - 到 7 月。我知道印度的这个问题——有些人有时不知道他们的出生日期。


例如如下:


var month = "UNK"; // TODO: here is your code to get the month name from field


month = month == "UNK" ? "JUL" : month;


var birthDate = new Date("12 " + month + " 1995");

var now = new Date();

var age = now.getFullYear() - birthDate.getFullYear();


document.write("Your Age is: " + age);


但请注意,您的计算并不真正正确,因为您没有使用完整日期(日、月、年、小时、分钟)进行计算。


我的建议


但我想建议使用一种新的 HTML5 输入字段类型date(请参阅此链接),如下所示(将鼠标指针放在此字段上):


<input name="birthdate" type="date" required>


所有用户都必须在此日期上自行承担责任。在这种情况下,他们必须选择一个日期,而您对此没有责任。


查看完整回答
反对 回复 2022-01-09
?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

您已经在字符串中包含年份,因此从字符串中提取它,然后从现在减去年份。


查看完整回答
反对 回复 2022-01-09
  • 2 回答
  • 0 关注
  • 139 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信