2017-09-28 18 views
0

私の角4のアプリケーションでは、以下の形式で日付を入力しています: "26-SEP-17 09.20.44.123000 AM"これを"Sep 26, 2017 9:20:44 AM"に変換する必要があります。だから私はmomentjsを使用していると、コードは以下の通りです:モーメントjsカスタム日付のフォーマット変換が間違っています

var convertedDate = moment("26-SEP-17 09.20.44.123000 AM", 'DD-MMM-YY HH.mm.ss.SSS a').format('MMM d, YYYY h:mm:ss A'); 
 

 
console.log(convertedDate)
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment.js"></script>

しかし、私は"Sep 2, 2017 9:20:44 AM"としてconvertedDateを取得しています。時間、分、秒が正しく入力されているにもかかわらず、私はなぜSep 2, 2017としてSep 26, 2017という日付を取得しているのか理解できませんでした。

+1

**日の名前** **日の**日**!少なくとも公式のドキュメントを最初にチェックする必要があります:) –

答えて

0

代わりのformat('MMM d, YYYY h:mm:ss A')

それはformat('MMM DD, YYYY h:mm:ss A') //notice the 'd' become 'DD'

あなたの新しいコードでなければなりませんます

convertedDate = moment("26-SEP-17 09.20.44.123000 AM", 'DD-MMM-YY HH.mm.ss.SSS a').format('MMM DD, YYYY h:mm:ss A'); 
1

使用正しいフォーマットDD代わりのd

var convertedDate = moment("26-SEP-17 09.20.44.123000 AM", 'DD-MMM-YY HH.mm.ss.SSS a').format('MMM DD, YYYY h:mm:ss A'); 
 
console.log(convertedDate)
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment.js"></script>

関連する問題