简单年龄计算无法正常工作

时间:2014-08-12 18:02:31

标签: javascript node.js

我正在尝试根据今天的日期减去他们的生日来计算一个人的年龄。

在这种情况下,我正在使用这些日期

Thu Nov 03 1988 00:00:00 GMT-0500 (Central Daylight Time)
Tue Aug 12 2014 11:56:33 GMT-0500 (Central Daylight Time)

方法

var birthday = new Date(user.birthTime);
var today = new Date();
console.log(birthday);
console.log(today);

console.log('age = '+Math.floor((today - birthday)/(1000*60*60*24)));

// Today minus birthday divided by .... (not sure where all these numbers come from but everyone on the internet uses them so they must be right?)
return Math.floor((today - birthday)/(1000*60*60*24));

当我期待26时,代码返回9413。

我怎样才能让这些人年岁?

3 个答案:

答案 0 :(得分:3)

这是几天而不是几年的年龄。

答案 1 :(得分:3)

JavaScript中的日期算术将以毫秒为单位生成值,您将它们除以1000*60*60*24,这样您就会得到以天为单位的结果(一分钟内的毫秒数*一分钟内的*秒*一小时内的*分钟*天)。

尝试将其除以1000*60*60*24*365

答案 2 :(得分:2)

你的年龄是天。如果您想要年龄,您需要将最后一次计算除以365

Math.floor((today - birthday)/(1000*60*60*24))/365