2013-01-23 6 views
6

私は、自分のタイムゾーンで特定の形式の日付を出力するためにmomentJsを使用すると、その日が失われていることに気付きました。MomentJS .format()は、自分のタイムゾーンで正しい日付を生成します。

私はUTC-4:30タイムゾーンに入っています。

これはすべてのタイムゾーンで発生するわけではありません。これはUTC-5:00タイムゾーンで正常に動作することに注意してください。

以下ではconsole.log結果が連続で実行されている:


正しい出力:

moment([2013, 0, 24]) 

モーメント
    _A:配列[8]
    _d:木をJan 24 2013 00:00:00 GMT-0430(ベネズエラ標準時)
    _isUTC:偽
    _lang:偽
    _proto:オブジェクト

moment([2013, 0, 24]).toDate() 

木2013年1月24日00:00:00 GMT-0430(ベネズエラ標準時)


不適切な出力:

.format()メソッドが使用されると、その日が失われたことを
moment('01/24/2013').format('MM/DD/YYYY') 

"2013年1月23日"

moment([2013, 0, 24]).format('MM/DD/YYYY') 

"2013年1月23日"


お知らせ24日ではなく23日が出力されます。


誰でもこの現象を説明できますか?ここでも、タイムゾーン固有のようです。

答えて

0

私は(UTC-4:30) Caracasに私のタイムゾーンを設定し、その後の値がチェック:それは正しく01/24/2013を返されたので、私はあなたが説明した問題を再現することはできません

moment('01/24/2013').format('MM/DD/YYYY') 

を。

私はmoment.js 2.0.0で確認しています。 Google Chrome 27.0.1453.116mでWindows 8を実行しています。

これはおそらく以前のバージョンのmoment.jsに関連しています。確認していただけますか?

+0

タイムゾーンはどこで設定しましたか? – daydreamer

+0

@daydreamer - Windowsオペレーティングシステムのタイムゾーン設定です。 –

関連する問題