La función _.memoize() se usa para memorizar una función determinada almacenando en caché el resultado calculado por la función. Se utiliza para acelerar el proceso de ejecución lenta.
Sintaxis:
_.memoize(function, [hashFunction])
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- función: La función que necesita ser ejecutada.
- hashFunction: Es un parámetro opcional. La función hash se usa para calcular la clave hash para almacenar el resultado.
Valor devuelto: Devuelve el resultado de la función llamada.
Los siguientes ejemplos ilustran la función _.memoize en Underscore.js:
Ejemplo 1:
<!DOCTYPE html> <html> <head> <script type="text/javascript" src= "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js"> </script> </head> <body> <script type="text/javascript"> var fib = _.memoize(function (n) { return n < 2 ? n : fib(n - 1) + fib(n - 2); }); console.log(fib(15)); </script> </body> </html>
Producción:
Ejemplo 2:
<!DOCTYPE html> <html> <head> <script type="text/javascript" src= "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js"> </script> </head> <body> <script type="text/javascript"> var sum = _.memoize(function (n) { return n < 1 ? n : n + sum(n - 1); }); console.log('Sum of first 10 natural number: ' + sum(10)); </script> </body> </html>
Producción:
Publicación traducida automáticamente
Artículo escrito por AshokJaiswal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA