2016-10-08 12 views
2

私のプロジェクトでは現在moment.js(moment-with-locales.js - v.2.14.1)を使用しています。私は日付のみを取得するために私のdatetime文字列の時間を削除したいと思います。しかし、私が.format()のmoment.jsメソッドを使用すると、誤った日付が返されます。 「2016年8月10日」から「2016年8月10日11時00分」からmoment.jsは月を代わりに曜日として使用します

ここ

が、私は私の角度のプロジェクトで使用スニップです:

私は、この日時文字列をフォーマットしたいです:私はこれを実行すると、私はこの出力を得た

var date = moment('08.10.2016 11:00').format('DD.MM.YYYY') 
console.log(date) 

10.08.2016 

代わりの 2016年8月10日

面白いことに、私は私の日時文字列のタイムスタンプ(ミリ秒)を取得したい場合、それは完璧に動作しますが、です。例:

var dateStart = moment('08.10.2016 19:00', 'DD.MM.YYYY HH:mm').valueOf() 
    console.log(dateStart) 

私は正しい日付を取得できますか

1475946000000 -> Sat Oct 08 2016 19:00:00 GMT+0200 

返すのだろうか?

答えて

6

あなたの地域によって異なります。 en-US locateは、 "month day year"で解析されることを意味します。したがって、パターンを解析する必要があります。

var date = moment('08.10.2016 11:00','DD.MM.YYYY HH:mm').format('DD.MM.YYYY') 
+0

... [String + Format](http://momentjs.com/docs/#/parsing/string-format/ )。 –

+0

ありがとう!完璧に働いた! –

関連する問題