La mémorisation (ou "mémoisation") est une technique d'optimisation qui met en cache les résultats de fonctions lourdes ou chronophages, afin que les futurs appels avec les mêmes arguments soient plus rapides. La mémorisation est particulièrement utile dans les fonctions pures, où le même ensemble d'entrées produit toujours le même résultat.
Comment fonctionne la mémorisation ?
Lorsqu'une fonction mémorisée est appelée pour la première fois avec certains arguments, elle effectue le calcul et stocke le résultat dans un cache. Lors des appels suivants avec les mêmes arguments, la fonction renvoie le résultat directement depuis le cache, évitant ainsi des calculs répétés.
Mise en œuvre de la mémorisation de base
function memoize(fn) { const cache = {}; return function(...args) { const key = JSON.stringify(args); // Cria uma chave única para os argumentos if (cache[key]) { console.log("Resultado em cache"); return cache[key]; // Retorna o valor armazenado no cache } const result = fn(...args); // Calcula o valor cache[key] = result; // Armazena o resultado no cache return result; }; }
Exemple d'utilisation :
function factorial(n) { if (n <= 1) return 1; return n * factorial(n - 1); } const memoizedFactorial = memoize(factorial); console.log(memoizedFactorial(5)); // Calcula e armazena em cache console.log(memoizedFactorial(5)); // Recupera do cache
Avantages de la mémorisation
Résumé
La mémorisation en JavaScript est une technique puissante pour améliorer l'efficacité du code et accélérer les performances lors d'opérations répétitives et coûteuses en calcul.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!