2012-10-05 16 views
5

私はエポックタイムを日数で必要とします。私はそれを日付に翻訳する方法についての記事を見たことがありますが、何もありません。私はエポックタイムではかなり悪いです...どうすればこれを得ることができますか?Javascriptエポック時間(日)

+0

あなたは1970年1月1日を意味しますか? – bms

答えて

22

私は私はあなたがエポックからの日数をしたいという解釈でしょう

日にエポックタイムを必要としています。エポックそのものは、0日目(または1日目の開始日ですが、見たいと思っています)です。

JavaScriptのDateオブジェクトの中心は、1970-01-01T00:00:00Z以降のミリ秒数です。

var now = new Date(); 
var fullDaysSinceEpoch = Math.floor(now/8.64e7); 

2012年10月5日のためにあなたがわからない15618.を取得する必要があります。だから今あなたは、単に現在の時間値を取得し、一日でミリ秒数で、それを分割するために、その後からの日数を取得しますもしそれがうるう秒などを許すならば、それはシステムクロックが正確であれば(数秒以内に)十分に近いはずです。

ローカルタイムを与えるためにタイムゾーンオフセットが適用されたDateオブジェクト(たとえば、getHours()およびtoString())の値を読み取るときのみです。

+1

閏秒は毎年2回しか追加されないため、この計算に影響を与えるまでには数千年かかるでしょう。 – Barmar

+4

@ Barmar-coolですが、日数が1つずれている真夜中の瞬間があるかもしれません。システムクロックは、このような正確さのために使用されるべきではありません。 :-) – RobG

関連する問題