When tested in the Firefox Javascript console,
Date.now();
returns 1433959098918.
Googling "1433959098918 ms in years" returns 45.4404 years, which added to January 1st 1970 00:00:00 is May 8th, 2015. I have also tried
(new Date()).getTime();
which returns the same result. Am I miscalculating something and if not, why is Date.now() returning this result?
EDIT: Nevermind, my calculation was incorrect. I assumed that dates are 0 based and they are not.
When tested in the Firefox Javascript console,
Date.now();
returns 1433959098918.
Googling "1433959098918 ms in years" returns 45.4404 years, which added to January 1st 1970 00:00:00 is May 8th, 2015. I have also tried
(new Date()).getTime();
which returns the same result. Am I miscalculating something and if not, why is Date.now() returning this result?
EDIT: Nevermind, my calculation was incorrect. I assumed that dates are 0 based and they are not.
Share Improve this question edited Jun 10, 2015 at 18:15 Iambrett3 asked Jun 10, 2015 at 18:06 Iambrett3Iambrett3 611 silver badge4 bronze badges 2- Your assumption is not correct, 1433959098918 = Wed, 10 Jun 2015 17:58:18 GMT so there seems to be no problem here – Claudio Redi Commented Jun 10, 2015 at 18:13
- "Am I miscalculating something". Well yes you are. As .4404 years are 160 days, now you can count – bugwheels94 Commented Jun 10, 2015 at 18:17
2 Answers
Reset to default 11Because the js timestamp is not the unix timestamp, the unix timestamp is in seconds not in miliseconds you need divided for 1000, you can remove the last 3 digits
1433959098918 -> 1433959098
This different format have a lot of problems if you don't know it. :)
Right now:
(new Date()).getTime()
Gives me:
1433959813432 (or 45,4 years)
Which is correct. You made an error in your putation:
1433959813432 [ms] / 60 [s/m] / 60 [m/h] / 24 [h/d] / 365.25 [d/y]
= 45.439444489821786194133901183867 [y]
You need to count 365.25 days per year to include leapyears.
It's not perfect AT ALL but it's a good approximation.
Add 1970 years and you get:
2015.4394444898217861941339011839
Which is the year 2015 plus the rest, which is:
0.4394444898217861941339011839 [y] * 365.25 [d/y]
Or:
160.50709990740740740740740740742 days
Now, deduct 31 days for january, 28 for february, 31 march, 30 for april and 31 for may and you get:
9.5070999074074074074074074074218 days into june
Which is the 10th day june of 2015 (count from 0).
The rest is:
0.5070999074074074074074074074218 * 24 hours
= 12.170397777777777777777777778123 hours
Plus my timezone and DST and it's just on spot!