目录
扩展运算符是 JavaScript 中的一个强大工具,它允许您将可迭代对象的元素扩展到另一个对象中。它用三个点“...”表示,可以与数组、对象和函数参数一起使用。掌握扩展运算符对于用 JavaScript 编写干净、简洁和高效的代码非常重要。
1. 合并数组
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
const mergedArray = [...arr1, ...arr2];
console.log(mergedArray); // [1, 2, 3, 4, 5, 6]
2. 复制数组
const originalArray = [1, 2, 3];
const copyArray = [...originalArray];
copyArray.push(4);
console.log(originalArray); // [1, 2, 3]
console.log(copyArray); // [1, 2, 3, 4]
3. 将字符串转换为数组
const str = "GLIKPO";
const arr = [...str];
console.log(arr); // ['G', 'L', 'I', 'K', 'P','O']
4.传递函数参数
function sum(a, b, c) {
return a + b + c;
}
const arr = [1, 2, 3];
const result = sum(...arr);
console.log(result); // 6
5. 解构数组
const arr = [1, 2, 3, 4, 5];
const [first, second, ...rest] = arr;
console.log(first); // 1
console.log(second); // 2
console.log(rest); // [3, 4, 5]
6. 合并对象
const obj1 = { a: 1, b: 2 };
const obj2 = { c: 3, d: 4 };
const mergedObject = { ...obj1, ...obj2 };
console.log(mergedObject); // { a: 1, b: 2, c: 3, d: 4 }
7. 注意事项
- 使用扩展运算符时可能会无意中修改原始数组或对象。
- 在不可迭代对象(例如数字或布尔值)上使用扩展运算符,可能会导致语法错误。
- 如果只需要访问数组的一小部分,可以使用数组方法(如slice()或splice()),而不是使用扩展运算符来创建新数组。如果只需要修改对象的几个属性,使用对象解构或Object.assign()方法