JavaScript Rest parameter
Last Updated :
13 Aug, 2024
The JavaScript Rest parameter allows a function to accept an indefinite number of arguments as an array. It is represented by three dots (...) followed by the parameter name and must be the last parameter in the function, enabling flexible and dynamic argument handling.
Syntax
//... is the rest parameter (triple dots)
function functionname(...parameters)
{
statement;
}
Note: When ... is at the end of the function parameter, it is the rest parameter. It stores n number of parameters as an array. Let's see how the rest parameter works:
Let's see how the rest parameter works.
Example 1: Without Using the Rest Parameter
Javascript code demonstrating the passing arguments more than the parameters without using rest parameter
JavaScript
function fun(a, b){
return a + b;
}
console.log(fun(1, 2)); // 3
console.log(fun(1, 2, 3, 4, 5)); // 3
Explanation: In the above code example
- Extra arguments beyond parameters are ignored without error.
- Use ... to collect additional arguments into an array.
- Rest parameters allow flexible argument handling for functions.
Example 2: Using the Rest Parameter
JavaScript code demonstrating the addition of numbers using the rest parameter.
JavaScript
// es6 rest parameter
function fun(...input) {
let sum = 0;
for (let i of input) {
sum += i;
}
return sum;
}
console.log(fun(1, 2)); //3
console.log(fun(1, 2, 3)); //6
console.log(fun(1, 2, 3, 4, 5)); //15
We were able to get the sum of all the elements that we enter in the argument when we call the fun() function. We get the sum of all the elements in the array by making use of the for..of loop which is used to traverse the iterable elements inside an array.
Note: The rest parameter has to be the last argument, as its job is to collect all the remaining arguments into an array. So having a function definition like the code below doesn't make any sense and will throw an error.
Example 3: Using Rest Parameter with Other Parameters
In this example, we are using the rest parameter with some other arguments inside a function.
javascript
// rest with function and other arguments
function fun(a, b, ...c) {
console.log(`${a} ${b}`); //Mukul Latiyan
console.log(c); //[ 'Lionel', 'Messi', 'Barcelona' ]
console.log(c[0]); //Lionel
console.log(c.length); //3
console.log(c.indexOf('Lionel')); //0
}
fun('Mukul', 'Latiyan', 'Lionel', 'Messi', 'Barcelona');
OutputMukul Latiyan
[ 'Lionel', 'Messi', 'Barcelona' ]
Lionel
3
0
Explanation:
- The rest parameter collects extra arguments into an array, handling more than the defined parameters.
- In the function, c[0] returns 'Lionel' from the rest parameter array.
- The rest parameter is an array, allowing use of standard array methods for further manipulation.
We have a complete list of Javascript Operators, to check those please go through the Javascript Operators Complete Reference article.
Similar Reads
TypeScript Rest Parameters and Arguments TypeScript Rest Parameters allow functions to accept an indefinite number of arguments of the same type, collecting them into an array. Arguments refer to the actual values passed to a function when it's invoked, while Rest Parameters provide a way to handle multiple arguments as an array within the
2 min read
What are Request Parameters in Postman ? Postman, a powerful tool for API testing, offers many features that make it easier to test, share, and document APIs. One of the crucial aspects of API testing using Postman involves handling request parameters. In this article, we will see what request parameters are, how to send them using Postman
4 min read
How Are Parameters Sent In An HTTP POST Request? HTTP POST requests are widely used in web development to send data from a client to a server. Whether you're submitting a form, uploading a file, or sending JSON data via an API, understanding how parameters are sent in an HTTP POST request is important. In this article, weâll explore how are parame
4 min read
How to pass parameters in Postman requests? Postman is an API(application programming interface) development tool that helps to build, test and modify APIs. It can make various types of HTTP requests(GET, POST, PUT, PATCH), save environments for later use, and convert the API to code for various languages(like JavaScript, and Python). In this
2 min read
REST API Architectural Constraints REST stands for Representational State Transfer and API stands for Application Program Interface. REST is a software architectural style that defines the set of rules to be used for creating web services. Web services that follow the REST architectural style are known as RESTful web services. It all
6 min read