在Firefox Javascript控制台中测试时,
Date.now();
返回1433959098918。
Google搜索“1433959098918 ms in years”返回45。04404年,增加到1970年1月1日00:00:00是2015年5月8日。我也试过了
(new Date()).getTime();
返回相同的结果。我错误地计算了一些东西,如果没有,为什么Date.now()会返回这个结果?
编辑:没关系,我的计算不正确。我假设日期是0,而不是。答案 0 :(得分:8)
因为js时间戳不是unix时间戳,所以unix时间戳以秒为单位,而不是毫秒,你需要除以1000,你可以删除最后3位数
1433959098918 - > 1433959098
如果你不知道,这种不同的格式有很多问题。 :)
答案 1 :(得分:2)
现在:
(new Date()).getTime()
给我:
1433959813432 (or 45,4 years)
哪个是对的。你在计算中犯了一个错误:
1433959813432 [ms] / 60 [s/m] / 60 [m/h] / 24 [h/d] / 365.25 [d/y]
= 45.439444489821786194133901183867 [y]
每年需要365.25天才能包括傻瓜。
它并不完美,但它是一个很好的近似值。
增加1970年,你得到:
2015.4394444898217861941339011839
2015年加上其余部分,即:
0.4394444898217861941339011839 [y] * 365.25 [d/y]
或者:
160.50709990740740740740740740742 days
现在,扣除1月31日,2月28日,3月31日,4月30日和5月31日,你得到:
9.5070999074074074074074074074218 days into june
2015年6月第10天(从0开始计算)。
其余的是:
0.5070999074074074074074074074218 * 24 hours
= 12.170397777777777777777777778123 hours
加上我的时区和夏令时,它就在现场!