Closure

by Michel Piallier

JavaScript

function multiplier(factor) {
  // C'est la fonction de la closure
  return function (number) {
    return factor * number;
  };
}

// Maintenant, utilisons la closure
const doubler = multiplier(2); // doubler est maintenant une closure qui double un nombre

const resultat = doubler(5); // Utilise la closure pour doubler 5
console.log(resultat); // Cela affichera 10, car 2 * 5 = 10

const tripler = multiplier(3); // tripler est une autre closure qui triple un nombre
const resultat2 = tripler(7); // Utilise la closure pour tripler 7
console.log(resultat2); // Cela affichera 21, car 3 * 7 = 21