spread vs rest operator code example
Example 1: javascript rest parameters vs spread operator
/**
* JS Spread and Rest operators:
* Two operators with the same syntax (...) but behave differently
*/
// Rest parameter: collects all remaining elements into an array.
function foo (...args) { console.log(args) }
foo(1,2,3,4,5,6) // Output: (6) [1,2,3,4,5,6]
// Spread operator: allows iterables to be expanded into single elements.
let arr = [1, 2, 3];
let arrCopy = [-1, 0, ...arr]; // spread the array into a list of parameters
// then put the result into a new array
Example 2: spread and rest operator javascript
var myName = ["Marina" , "Magdy" , "Shafiq"] ;const [firstName , ...familyName] = myName ;console.log(firstName); // Marina ;console.log(familyName); // [ "Magdy" , "Shafiq"] ;
Example 3: spread operator javascript
[a, b, ...objIteravel] = [1, 2, 3, 4, 5];
Example 4: spread and rest operator javascript
function myData(...args){console.log(args) ; // ["Marina",24,"Front-End Developer"]}myData("Marina",24,"Front-End Developer") ;