2017-07-21 4 views
-1

サーバから日付を取得します(例:[2017,8,24,9,0])。 momentjsで解析してローカライズすると、すべての日付が1ヶ月先に表示されます。Augustではなく、Septemberとなります。 [2017,8,31,9,0]の場合、私はinvalid dateを得ます。September31日ではないと思います。Momentjsでは、Javaで構築されたサーバーから送信された日付を解析する方法は?

私の質問は、[2017,8,24,9,0],[2017,8,29,20,0][2017,8,31,9,0]などの日付をどのようにしてD.MMM [kl.] H:mm形式にパースするかです。

JavaScript datezero-indexedですが、javaの日付はわかりません。私はmomentjssubtract()メソッドを使用しましたが、[2017,8,31,9,0]は依然としてinvalid dateです。

+2

JavaScriptの月はゼロベースです。あなたは1つを引く必要があります。 – jonrsharpe

+0

JavaはJavaScriptではありません。 – Rob

+0

いいえ、私は文字通り配列*の2番目の数字から*を意味します。つまり、あなたは瞬時にそれを伝えます。 – jonrsharpe

答えて

1

これはJavaScriptの問題です。しかし、バグではありません。 js日付、months are zero based。あなたが、あなたは、構文解析プロセスを進めることができます。1.

var myServerDate = [2017,8,24,9,0]; 

myServerDate[1] = myServerDate[1] -1; 

で月引くことができ、これを解決するために、0 = 1月、1 = 2月、などです。

関連する問題