Pure Function
JavaScript 🟢 JuniorDéfinition
Fonction qui retourne toujours le même résultat pour les mêmes arguments et ne produit aucun effet de bord. Déterministe et sans mutation d'état externe.
Analogie
Une calculatrice : 2+3 donne toujours 5, peu importe quand ou ou tu fais le calcul.
Exemple de code
// Pure
const add = (a, b) => a + b;
const upper = (s) => s.toUpperCase();
// Impure
let count = 0;
const increment = () => ++count; // mutation externe
Cas d'usage
Reducers Redux, fonctions de transformation, tests unitaires faciles, memoization possible.