Rest Operator (…) in Object Destructuring
Introduction
Introduced in ES2018 to help with [JavaScript Destructuring](JavaScript Destructuring).
Syntax
Basic
const obj = { foo: 1, bar: 2, baz: 3 };
const { foo, …rest } = obj;
console.log(foo); // 1
console.log(rest); // { bar: 2, baz: 3 }
Named parameters
The rest operator can also be used with [JavaScript Named parameters](JavaScript Named parameters):
function func({ param1, param2, …rest }) {
// rest operator
console.log(“All parameters: ”, { param1, param2, …rest }); // spread operator
return param1 + param2;
}