The _.memoize() function is used to memorize a given function by caching the result computed by the function. It is used to speed up for the slow running process.
Syntax:
html
Output:
Example 2:
html
_.memoize(function, [hashFunction])Parameters: This function accepts two parameters as mentioned above and described below:
- function: The function that need to be executed.
- hashFunction: It is an optional parameter. The hashFunction is used to compute the hash key for storing the result.
<!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>
Example 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>
Output:

