扩展运算符是JavaScript ES6中引入的一种新特性,用于将一个数组或对象转换为逗号分隔的参数序列。
在ES6之前,我们通常使用apply()方法来实现这个功能,但使用扩展运算符可以让代码更加简洁易懂。
在数组中应用扩展运算符,可以将一个数组展开为逗号分隔的参数序列。
const arr = [1, 2, 3];
console.log(...arr); //输出:1 2 3
在对象中应用扩展运算符,可以将一个对象展开为另一个对象的属性。
const obj1 = { name: 'Lucy', age: 18 };
const obj2 = { ...obj1, gender: 'female' };
console.log(obj2); //输出:{ name: 'Lucy', age: 18, gender: 'female' }
扩展运算符还可以用在函数的参数列表中,可以将一个数组作为参数传递给一个函数。
function sum(a, b, c) {
return a + b + c;
}
const arr = [1, 2, 3];
console.log(sum(...arr)); //输出:6
扩展运算符还可以用来复制数组和对象。
const arr1 = [1, 2, 3];
const arr2 = [...arr1];
console.log(arr2); //输出:[1, 2, 3]
const obj1 = { name: 'Lucy', age: 18 };
const obj2 = { ...obj1 };
console.log(obj2); //输出:{ name: 'Lucy', age: 18 }