2016-04-03 27 views
3

データベースのutc文字列があります。Date(attrs.endDate)に渡してから、現在のutc日付をnew Date()で減算しています2つのutc日付の間に正しい差異がどうなるか教えてください。JavaScriptの日付(文字列の日付) - 正しい差が表示されないdate()

attrs.endDateは常に8h utc先であり、カウントダウンを行うには違いがありますが、私は13hの違いを得ています。

var totalMillisecsLeft = Date(attrs.endDate) - new Date() 
+0

を呼び出す場合は、[ '日付() 'new'なし(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date)、引数を一切使用しません。常に現在の日付/時刻を書式設定された文字列として返します。 –

+0

新しいものを追加しましたが、私はまだutcの日付の代わりに自分のローカルのタイムゾーンと時間差があります - new Date() – user1552172

+0

'Date'オブジェクトの基礎となるタイムスタンプ(' .getDate() ') UTCで時間差がミリ秒単位でずれている場合、 'endDate'はタイムゾーンを指定せず、ブラウザがあなたのために仮定している可能性があります。 –

答えて

0

2番目の日付はutcの日付ではなく、ローカルの日付です。 あなたが使用する必要があります。

var totalMillisecsLeft = Date(attrs.endDate) - getUTCDate() 
+0

getUTCDate()は関数ではありません。 – user1552172

+0

すみません。このメソッドは、Dateオブジェクトのインスタンスに対して機能します。 var d = new Date(); d.getUTCDate(); – Tal87

+0

これで、4-5時間ではなく、 getUTCDate()メソッドは、日付オブジェクトの月の日(1から31まで)を返します – user1552172

0

私はmoment.utc(MyDateに該当)使用して終了 - moment.utcを()とすべてが完璧に働いた...まだ、わから理由

関連する問題