moment.js est une librairie javascript légère qui permet de manipuler facilement les dates, que ce soit pour l'affichage, les calculs ou l'internationalisation.
- Albert Einstein est né le 14/03/1879
<p>Albert Einstein est né le <code id="ex1">14/03/1879</code></p>
$(function(){
var langs = ['fr', 'es', 'en'];
var results = new Array();
var birth = moment($('#ex1').text(), "DD/MM/YYYY");
for( var i in langs){
moment.lang(langs[i]);
results.push('' + birth.fromNow() + ' (' + langs[i] + ')' + '
');
}
$('#ex1').after(' -> ' + results.join(' - '));
})
- Aujourd'hui: , demain:
<p>- Aujourd'hui: <code id="ex2"></code>, demain: <code id="ex3"></code></p>
// aujourd'hui var now = moment(); // choix de la langue moment.lang('fr'); // la date du jour formatée. $('#ex2').text(now.format('dddd D MMMM YYYY')); // la date du jour + 1 jour formatée. $('#ex3').text(now.add('d', 1).format('dddd D MMMM YYYY'));
- Un dernier pour la route ... Dans un projet sur lequel j'ai travaillé, il était nécessaire de connaître l'âge en mois d'enfants à partir de leurs dates de naissances.
Par exemple, Rémi est un c.. né le 05/11/2010 et Caillou le 12/10/2009 ->
Rémy a et Caillou
.
<p>Rémi est né le <span id="ex4">05/11/2010</span> et Caillou le <span id="ex5">12/10/2009</span> Rémy a <code id="res4"></code> et Caillou <code id="res5"></code>.</p>
// ex4 var remybirth = moment($('#ex4').text(), "DD/MM/YYYY"); var cailloubirth = moment($('#ex5').text(), "DD/MM/YYYY"); // la variable now a été définie dans l'exemple 2. var remyagemonth = now.diff(remybirth, 'months'); var caillouagemonth = now.diff(cailloubirth, 'months'); $('#res4').text( remyagemonth + ' mois'); $('#res5').text( caillouagemonth + ' mois');