展开运算符
用法:…要展开的东西
es6:支持展开数组
es2016:支持展开对象
例子
1.展开数组并传入函数
var arr = [1,2,3,4,5];
function test(...arg){
for(let i = 0; i < arg.length; i++){
console.log(arg[i]);
}
}
test(...arr);
2.克隆,注意是浅克隆
const arr1 = [3, 67, 8, 5];
const arr2 = [...arr1];
console.log(arr2, arr1 === arr2);
let obj1 = {
name : 'abc',
age : 18,
address : {
city : '重庆'
}
}
let obj2 = {
...obj1,
address : {
...obj1.address
}
};
console.log(obj2, obj1 === obj2, obj1.address.city === obj2.address.city);