扩展运算符(...),将一个数组转为用逗号隔开的参数序列。 rest参数的逆运算
let arr=[1,2,3];
console.log(...arr);
console.log("a","b",...arr);
1、主要应用:
2、作用于字符串
3、应用在dom元素上
4、主要应用在函数调用 参数
5、对象中,可以使用扩展运算符
6、应用于解构赋值
7、复制数组
8、拼接数组
9、将字符串转换为数组
10、数组去重
下面是详细操作方法
// 作用于字符串
console.log(..."hello");
// 应用在DOM元素上
let aBoxs=document.getElementsByClassName("box");
console.log(...aBoxs);
// 主要应用在函数调用 参数
function add(a,b){
console.log(a+b)
}
add(1,2);
add(...[1,2]);
function push(arr,...items){
arr.push(...items)
}
push(arr,...[4,5,6,7,8,9]);
console.log(arr);
function func(a,b,c,d,e,f){};
func(1,...[2,3,4],...[5,6]);
// 对象中 可以使用扩展运算符
let obj={a:1,b:2};
let obj2={...obj};//对 对象进行拷贝
console.log(obj2);
// 应用于解构赋值
let [a,...items]=[1,2,3,4,5,6]
console.log(a);
console.log(items);
let [...items2,b]=[1,2,3,4,5,6];//Rest element must be last element 只能做为最后一个参数
// 复制数组
let arr1=["a","b","c"];
let arr2=[...arr1];
console.log(arr2);
// 拼接数组
console.log([...arr1,...arr2]);
// 将字符串转换为数组
console.log("world".split(""));
console.log([..."world"]);
// 数组去重
let arr3=[1,21,1,1,2,3,4,3,2,4];
console.log([...new Set(arr3)]);
console.log(Array.from(new Set(arr3)));