web-dev-qa-db-ja.com

2桁の月番号から月名を取得する

2桁の月番号(ex- 09)から月名を取得したい。このコードで試しました。しかし、それは機能しません。コードは現在の月名のみを示します。正しいコードは何ですか?

 var formattedMonth = moment().month('09').format('MMMM');
20
GRTZ

Momentオブジェクトを作成するときに月を渡します:

var formattedMonth = moment('09', 'MM').format('MMMM'); // September

moment(
    '09',           // Desired month
    'MM'            // Tells MomentJs the number is a reference to month
).format('MMMM')    // Formats month as name
33
Kevin Boucher

Kevinの答えには何も問題はありませんが、momentオブジェクトを経由せずに月の文字列を取得する方がおそらく(効率の点で)より正確です。

var monthNum = 9;   // assuming Jan = 1
var monthName = moment.months(monthNum - 1);      // "September"
var shortName = moment.monthsShort(monthNum - 1); // "Sep"
43

あなたは月をテキストではなく数字として渡す必要があります-だから...

var formattedMonth = moment().month(9).format('MMMM');
console.log(formattedMonth)

結果:10月

9
nril

言語を変更したい(ロケール)ために、これが私がしたことです

let month = moment().month(09).locale('pt-br').format('MMMM');
0
Yandiro