首页 > js中的Date对象的getTime()这个方法为什么是返回1970年到现在的毫秒呢

js中的Date对象的getTime()这个方法为什么是返回1970年到现在的毫秒呢

js中的Date对象的getTime()这个方法为什么是返回指定的日期和时间距 1970 年 1 月 1 日午夜(GMT 时间)之间的毫秒数呢? 为什么是1970.。。


据说这是从Unix沿袭下来的。Unix发行的年代,机器字长和内存都很有限,为了节约资源,表示时间最好的办法就是只表示从现在开始的时间差值,之前的时间没必要去管它。

当然,这一做法现在看来是很有问题的,例如不方便用它表示更早的时间而且精度有限。但这就像很多其他历史问题(例如著名的千年虫问题)一样,是当时那种条件下所能采取的最优的策略。


很多东西只有是什么,没有为什么,就像这个函数为什么叫 getTime 而不叫 getTimestamp 一样


这个起源于unix的诞生,因为Unix在1969年被开发出来,1971年正式发布,在这之前没有机器会需要来表示1970-01-01-00:00:00之前的时间。后面的语言很多就沿用了这一习惯。js只是也沿用了这种习惯而已

参考:
unix_time
the-epoch-time

【热门文章】
【热门文章】