2017-05-19 32 views
0

momentの回答は私のプロジェクト内のライブラリとして完全に歓迎されています。文字列を日付に変換する方法 - 無効な日付

私はこの日付を持っています17th 5月2017これを有効な日付オブジェクトに変換する必要があります。どうすればこれを達成できますか? Invalid Date

moment('17th May 2017').format(...) 
new Date('17th May 2017') 

次リターンの

の両方がどのような奇妙なのは、しかし、私はその逆にそれを行うことができるよ、私は上記のような日付を出力'Do MMMM YYYY'にフォーマットするmomentを使用することができるということです。

更新

それが働いているthis JSFiddleを参照してください。私は私へのポート、それはアプリを反応すると意図したとおり

しかし、それは動作しません

const { 
    safe_date: date, 
} = firstVideo; 
console.log(
    'MomentJS me!', 
    date, 
    moment(date, 'dd MMM yyyy'), 
    moment(date, 'dd MMM yyyy').valueOf(), 
); 

dateは私のconsole.log

MomentJS me! 17th May 2017 ... NaN 

の出力文字列

であるI moment(date.toString(), 'dd MMM yyyy')のconsole.logには興味がないので、私はそれを省略しました、奇妙なことはvalueOf()が返されますですがJSFiddleで正しく返されます。

+2

'瞬間( '2017年5月17日'、 "DD MMMのYYYYを")作業Javaでみました'私は推測します。あなたは値をフィードするフォーマットを指定する必要があります – Rajesh

+0

私はfacepalmに準備ができています、ありがとうございます。あなたが答えを出すなら、私はアップフォートして受け入れます。 – Dan

+1

あなたは文字通り何千もの可能性があるので、どんなフォーマットが期待できるかを瞬時に伝える必要があります...瞬間図書館はたくさんのものですが、「あなたが望むものを知っていません」 –

答えて

-2

お試しmoment('17th May 2017', "dd'th' MMM yyyy") は私がきちんと

SimpleDateFormat outputFormat = new SimpleDateFormat("dd'th' MMM yyyy"); 
System.out.println(outputFormat.parse("17th May 2017")); 
+0

言語はECMAScript、パーサはMoment.js、フォーマット文字列は "MMMM YYYY"にする必要があります。 :-( – RobG

関連する問題