展开运算符和剩余运算符
展开运算符是三个点你(...),可以将一个数组转为用逗号分隔的参数序列。说的通俗易懂点,就好像化骨绵掌,把一个大元素给打散成一个个单独的小元素。
//demo 1 传递数据代替多个字符串的形式
function test(a,b,c){
console.log(a);
console.log(b);
console.log(c);
}
var arr = [1, 2, 3];
test(...arr);
//demo2 将一个数组插入到另一个数据中
var arr1 = [1, 2, 3,4];
var arr2 = [...arr1, 4, 5, 6];
console.log(arr2);
//demo3 字符串转数据
var str='loycoder';
var arr3= [...str];
console.log(arr3);
剩余运算符也是三个小点(...),但是它是用于解构数组和对象。在某种程度上,剩余元素和展开元素相反,展开元素会‘展开’数组变成多个元素,剩余元素会收集多个元素和‘压缩’成一个单一元素。
demo1:
var [a,...temp]=[1, 2, 4];
console.log(a); //2 1
console.log(temp); // [2, 4]
demo2
function rest02(item, ...arr) {
console.log(item); //2 1
console.log(arr); // [2, 34]
}
rest02(1, 2, 34);
demo3
function rest01(...arr) {
for (let item of arr) {
console.log(item);// 1 3 5
}
}
rest01(1, 3, 5);