Spread Operator
Spread Operator — The spread operator (`...`) expands iterables (arrays, strings, objects) into individual elements or properties. The spread operator was introduced in ES6 for arrays and ES2018 for objects. It creates shallow copies and is commonly used for array/object merging, cloning, and passing array elements as function arguments. Unlike rest parameters which collects elements, spread spreads them out. This term relates to the Operators category of the reference. You will meet spread operator in practice when working with APIs such as + (Addition), - (Subtraction), * (Multiplication), === (Strict Equality). Related terms: Closure, Hoisting, Event Loop, Prototype Chain, Temporal Dead Zone (TDZ), IIFE (Immediately Invoked Function Expression). Understanding spread operator makes the rest of the JavaScript documentation noticeably easier to follow, because the concept recurs across methods, guides, and error messages. Look up more definitions in the JavaScript glossary.