1 扩展运算符
在ES6中。 三个点(...) 有2个含义。分别表示 扩展运算符 和 剩余运算符。
数组展开
1 function test(a,b,c){ 2 console.log(a); 3 console.log(b); 4 console.log(c); 5 } 6 7 var arr = [1, 2, 3]; 8 test(...arr); 9 // 打印结果 10 // 1 11 // 2 12 // 3
将一个数组插入到另一个数据中
1 var arr1 = [1, 2, 3]; 2 var arr2 = [...arr1, 4, 5, 6]; 3 console.log(arr2); 4 // 打印结果 5 // [1, 2, 3, 4, 5, 6]
字符串转数据
1 var str='test'; 2 var arr3= [...str]; 3 console.log(arr3); 4 // 打印结果 5 // ["t", "e", "s", "t"]
2 剩余运算符
当函数参数个数不确定时,用 rest运算符
1 function rest1(...arr) { 2 for (let item of arr) { 3 console.log(item); 4 } 5 } 6 rest1(1, 2, 3); 7 // 打印结果 8 // 1 9 // 2 10 // 3
当函数参数个数不确定时的第二种情况
1 function rest2(item, ...arr) { 2 console.log(item); 3 console.log(arr); 4 } 5 rest2(1, 2, 3, 4, 5); 6 // 打印结果 7 // 1 8 // [2, 3, 4, 5]
解构使用
1 var [a,...temp]=[1, 2, 3, 4]; 2 console.log(a); 3 console.log(temp); 4 // 打印结果 5 // 1 6 // [2, 3, 4]