web-dev-qa-db-fra.com

Obtenir le nom du mois à partir d'un numéro de mois à deux chiffres

Je veux obtenir le nom du mois à partir d'un numéro de mois à deux chiffres (ex-09). J'ai essayé avec ce code. Mais ça ne marche pas. Le code donne uniquement le nom du mois en cours. Quel est le bon code pour cela?

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

Vous souhaitez passer le mois lorsque vous créez l'objet 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

Bien qu'il n'y ait rien de mal avec la réponse de Kevin, il est probablement plus correct (en termes d'efficacité) d'obtenir la chaîne du mois sans passer par un objet moment.

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

Vous devez passer le mois sous forme de nombre, pas de texte - alors ...

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

Résultat: octobre

9
nril

Pour ceux qui cherchent à le faire et qui changent de langue (locale), c'est ce que j'ai fait

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