$('#dob').datepicker({
onSelect: function(value, ui) {
var today = new Date(),
dob = new Date(value),
age = new Date(today - dob).getFullYear() - 1970;
$('#age').text(age);
},
maxDate: '+0d',
yearRange: '1920:2010',
changeMonth: true,
changeYear: true
});
我使用此代码来获取日期选择器更改值时的当前年龄。
我只是很困惑 1970
在此 age = new Date(today - dob).getFullYear() - 1970;
中代表什么,我需要将其更改为使其动态化?
最佳答案
需要减去 1970
,因为向 Date()
构造函数提供整数值时(如 new Date(today - dob 的情况) )
) 假设您提供的是自 1970 年 1 月 1 日纪元以来的毫秒数。
因此,您需要从 DoB 计算得出的日期的年份值中减去 1970
,以获得用户的年龄。
您的代码完全正确。您永远不需要更改计算。
关于jquery - 当日期选择器更改jquery时获取当前年龄,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39244660/