当datepicker更改jquery时获取当前年龄

Bro*_*val 5 jquery

$('#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
});
Run Code Online (Sandbox Code Playgroud)

我正在使用此代码来获取datepicker更改值时的当前年龄.

我只是困惑什么1970代表在此age = new Date(today - dob).getFullYear() - 1970;我需要去改变它,使它的动态?

Ror*_*san 2

需要减去 ,1970因为当向构造函数提供整数值时Date()(如 的情况new Date(today - dob)),假定您提供的是自 1970 年 1 月 1 日纪元以来的毫秒数。

因此,您需要1970从 DoB 计算得出的日期的年份值中减去,以获得用户的年龄。

你的代码是完全正确的。您永远不需要更改计算。