암기(또는 "메모이제이션")는 무겁거나 시간이 많이 걸리는 기능의 결과를 캐시하여 동일한 인수를 사용하는 향후 호출이 더 빨라지도록 하는 최적화 기술입니다. 암기는 동일한 입력 세트가 항상 동일한 결과를 생성하는 순수 함수에서 특히 유용합니다.
암기는 어떻게 작동하나요?
기억된 함수가 특정 인수와 함께 처음 호출되면 계산을 수행하고 결과를 캐시에 저장합니다. 동일한 인수를 사용하는 후속 호출에서 함수는 반복 계산을 피하고 캐시에서 직접 결과를 반환합니다.
기본 암기 구현
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; }; }
사용예:
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
암기의 장점
요약
JavaScript의 암기는 반복적이고 계산 비용이 많이 드는 작업에서 코드 효율성을 향상하고 성능을 가속화하는 강력한 기술입니다.
위 내용은 JavaScript로 암기하기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!