展开运算符的五种用法:
/* 用法1:展开一个数组 */
let arr = [1,3,5,7,9];
console.log(...arr); // 1 3 5 7 9
/* 用法2:深拷贝一个数组 */
let arr1 = [1,3,5,7,9];
let arr2 = [...arr1];
/* 用法3:合并数组 */
let arr1 = [1,3,5,7,9];
let arr2 = [2,4,6,8,10];
let arr3 = [...arr1, ...arr2];
console.log(arr3); // [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
/* 用法4:深拷贝一个对象 */
let obj1 = {a:1, b:2};
let obj2 = {...obj1};
/* 用法5:合并对象 */
let obj1 = {a:1, b:2};
let obj2 = {...obj1, b: 6, c: 3};
console.log(obj2); // {a:1, b:6, c:3}
注意!!!展开运算符不能“展开”一个对象!
let obj = {a:1, b:2};
console.log(...obj); // 此行代码会报错!!!