JavaScript : addition et soustraction sur les dates

Il est très simple d’effectuer des opérations sur les dates en JavaScript natif.

L’addition et la soustraction sur les dates sont incontournables dés le moment où l’on souhaite calculer une date passée ou future.

1. Addition sur les dates

L’addition sur les dates, représente une partie importante des opérations possibles.

Pour ajouter par exemple N jours à une date, il suffit d’utiliser le code suivant :

// On ajoute au prototype de l'objet Date une méthode personnalisée
Date.prototype.addDays = function(days) {
// On récupère le jour du mois auquel on ajoute le nombre de jour passé en paramètre
var day = this.getDate()+days;
// On définit le jour du mois (This représente la date sur laquelle on effectue l'opération)
this.setDate(day);
}

// On crée un objet date avec la date voulue : on transforme notre date FR au format ISO(US).
var myDate = new Date( "08/01/2015".replace( /(\d{2})\/(\d{2})\/(\d{4})/, "$2/$1/$3") );
// On affiche la date avant d'ajouter les jours
console.log(myDate); // Thu Jan 08 2015 00:00:00 GMT+0100 (Paris, Madrid)
// On additionne le nombre de jour voulu (ex: 2 jours)
myDate.addDays(2);
// On affiche la date
console.log(myDate); // Sat Jan 10 2015 00:00:00 GMT+0100 (Paris, Madrid)
Addition date

2. Soustraction sur les dates

La soustraction sur les dates utilise exactement la même fonction addDays décrite ci-dessus sauf qu’il faudra ajouter le signe « – » devant la valeur à soustraire. Imaginons que nous souhaitons soustraire 4 jours à une date, nous ferions donc :

// On crée un objet date avec la date voulue : on transforme notre date FR au format ISO(US).
var myDate = new Date( "08/01/2015".replace( /(\d{2})\/(\d{2})\/(\d{4})/, "$2/$1/$3") );
// On affiche la date avant de soustraire les jours
console.log(myDate); // Thu Jan 08 2015 00:00:00 GMT+0100 (Paris, Madrid)
// On soustrait le nombre de jour voulu (ex: -4 jours)
myDate.addDays(-4);
// On affiche la date
console.log(myDate); // Sun Jan 04 2015 00:00:00 GMT+0100 (Paris, Madrid)
Soustraction date

Références :

 

Poster un Commentaire

Soyez le premier à commenter !

Me notifier des
avatar
wpDiscuz