Comment récupérer le mois à partir de la date actuelle au format mm
? (c'est-à-dire "05")
Ceci est mon code actuel:
var currentDate = new Date();
var currentMonth = currentDate.getMonth() + 1;
if (currentMonth < 10) { currentMonth = '0' + currentMonth; }
Une autre manière:
var currentMonth=('0'+(currentDate.getMonth()+1)).slice(-2)
Une solution en ligne:
var currentMonth = (currentDate.getMonth() < 10 ? '0' : '') + currentDate.getMonth();
pour la date:
("0" + this.getDate()).slice(-2)
et similaire pour le mois:
("0" + (this.getMonth() + 1)).slice(-2)
Pour que la réponse acceptée renvoie une chaîne de manière cohérente, il convient que:
if(currentMonth < 10) {
currentMonth = '0' + currentMonth;
} else {
currentMonth = '' + currentMonth;
}
Ou:
currentMonth = (currentMonth < 10 ? '0' : '') + currentMonth;
Juste pour les amusements, voici une version sans condition:
currentMonth = ('0' + currentMonth).slice(-2);
Edit: est passé à slice
, selon la réponse de Gert G, crédit lorsque le crédit est dû; substr
fonctionne aussi, je ne savais pas qu'il acceptait un argument start
négatif
var CurrentDate = new Date();
CurrentDate.setMonth(CurrentDate.getMonth());
var day = CurrentDate.getDate();
var monthIndex = CurrentDate.getMonth()+1;
if(monthIndex<10){
monthIndex=('0'+monthIndex);
}
var year = CurrentDate.getFullYear();
alert(monthIndex);
Si tu fais ça
var currentDate = new Date();
var currentMonth = currentDate.getMonth() + 1;
alors currentMonth est un nombre que vous pouvez formater à votre guise. Voir la question suivante qui vous aidera à formater: Comment formater un entier d'une longueur spécifique en javascript?
Version ES6 inspiré de @ gert-grenander
let date = new Date();
let month = date.getMonth() +1;
month = (`0${month}`).slice(-2);