Open In App

Underscore.js _.memoize() Function

Last Updated : 24 Nov, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

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:

_.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.

Return Value: It returns the result of the called function.

Below examples illustrate the _.memoize function in Underscore.js:
Example 1:




<!DOCTYPE html>
<html>
  
<head>
    <script type="text/javascript" src=
    </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>


Output:

Example 2:




<!DOCTYPE html>
<html>
  
<head>
    <script type="text/javascript" src=
    </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:



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads