扩展运算符(Spread Operator)是ES6中新增的运算符,使用“...”语法,可以将一个数组或对象进行展开操作,可以将它们拆分成独立的元素。它可以用于数组、对象、函数参数等多种情形。
例如,使用扩展运算符可以将一个数组拆分成独立的元素:
const arr = [1, 2, 3]; console.log(...arr); // 1 2 3
还可以使用扩展运算符合并数组:
const arr1 = [1, 2]; const arr2 = [3, 4]; console.log([...arr1, ...arr2]); // [1, 2, 3, 4]
扩展运算符在函数参数中的使用也很常见,可以将一个数组展开成函数的参数:
function sum(a, b, c) { return a + b + c; } const arr = [1, 2, 3]; console.log(sum(...arr)); // 6
除此之外,扩展运算符还可以用于对象展开:
const obj1 = { x: 1, y: 2 }; const obj2 = { z: 3 }; console.log({ ...obj1, ...obj2 }); // { x: 1, y: 2, z: 3 }