JavaScript中的展开运算符(Spread Operator)用于展开可迭代对象(如数组、字符串等)为独立的元素,或者用于将多个元素合并为一个数组或对象。
展开运算符使用三个连续的点号(...
)来表示。
- 展开数组:
展开运算符可以将数组展开为独立的元素。
const arr = [1, 2, 3];
console.log(...arr); // 输出:1 2 3
在上述示例中,...arr
将数组arr
展开为独立的元素,输出为1 2 3
。
- 合并数组:
展开运算符可以将多个数组合并为一个新数组。
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
const mergedArray = [...arr1, ...arr2];
console.log(mergedArray); // 输出:[1, 2, 3, 4, 5, 6]
在上述示例中,[...arr1, ...arr2]
将两个数组arr1
和arr2
展开,并合并为一个新数组mergedArray
。
- 展开对象:
展开运算符也可以用于展开对象的属性。
const obj = { x: 1, y: 2 };
const newObj = { ...obj, z: 3 };
console.log(newObj); // 输出:{ x: 1, y: 2, z: 3 }
在上述示例中,{ ...obj, z: 3 }
将对象obj
展开,并添加新的属性z
,创建一个新的对象newObj
。
展开运算符可以在很多情况下提供便利和简洁的写法,例如将数组元素作为函数的参数传递、合并数组或对象等。它是一种在处理数组和对象时很有用的语法特性。