Saturday, January 17, 2026
HomeLanguagesJavascriptUnderscore.js _.restArguments() Function

Underscore.js _.restArguments() Function

Underscore.js is a JavaScript library that provides a lot of useful functions that help in the programming in a big way like the map, filter, invoke, etc. even without using any built-in objects.

The _.restArguments() function is an inbuilt function in Underscore.js library of JavaScript which is used to find a version of the function which when invoked can receive all the arguments from and beyond the stated startIndex that is collected into a single array. The number of arguments to the function would be used to determine the startIndex when a definite value is not given.

Syntax:

_.restArguments( function, startIndex )

Parameters: This method accepts two parameters as mentioned above and described below:

  • function: It is the stated function.
  • startIndex: It is the start position of the rest parameter. It is an optional parameter.

Return Value: This method returns a version of the function which is when invoked can receive all the arguments from and beyond the stated index.

Example 1: In this example, a user-defined function is used.

HTML




<!DOCTYPE html>
<html>
  
<head>
    <script src=
    </script>
</head>
  
<body>
    <script type="text/javascript">
        // Calling restArguments method
        // with its parameter
        var writes =
            _.restArguments(function (authors, portal) {
                return authors + portal;
            });
  
        // Calling write with its values 
        console.log(
            writes(
                ['Nidhi1352', ' neveropen!']
            )
        );
    </script>
</body>
  
</html>


Output:

Nidhi1352, neveropen!

Example 2: In this example, a starting index is passed along with the user-defined function.

HTML




<!DOCTYPE html>
<html>
  
<head>
    <script src=
    </script>
</head>
  
<body>
    <script type="text/javascript">
        // Calling restArguments method
        // with its parameter
        var writes =
            _.restArguments(
                function (authors, portal, articles) {
                    return authors + portal + articles;
                }, [2]);
  
        // Calling writes with its values 
        console.log(
            writes(
                ['Nidhi1352', ' neveropen!', ' 700 ']
            )
        );
    </script>
</body>
  
</html>


Output:

Nidhi1352, neveropen!, 700 undefined

Example 3:

HTML




<!DOCTYPE html>
<html>
  
<head>
    <script src=
    </script>
</head>
  
<body>
    <script type="text/javascript">
        var call =
            _.restArguments(function (who, whom) {
                return who + ' ' +
                    _.initial(whom).join(', ') +
                    (_.size(whom) > 2 ? ', & ' : '') +
                    _.last(whom);
            });
  
        // Calling the function above
        // with its values
        console.log(
            call(
                'She called', 'me', 'her', 'you.'
            )
        );
    </script>
</body>


Output:

She called me, her, & you.
Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, neveropen Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!
RELATED ARTICLES

Most Popular

Dominic
32474 POSTS0 COMMENTS
Milvus
118 POSTS0 COMMENTS
Nango Kala
6846 POSTS0 COMMENTS
Nicole Veronica
11977 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12063 POSTS0 COMMENTS
Shaida Kate Naidoo
6985 POSTS0 COMMENTS
Ted Musemwa
7219 POSTS0 COMMENTS
Thapelo Manthata
6933 POSTS0 COMMENTS
Umr Jansen
6911 POSTS0 COMMENTS