只有理解了才能更好的记住…
理解
扩展运算符…可以理解成将数组里的元素一个个剥离出来,或者将对象的{}剥离出来,总之就是把数据的最外层衣服给剥掉。
1、数组
// 数组
let arr = [1,9,5,6];
console.log(...arr);
将数组的每个元素剥离开:
2、对象
// 对象
let obj = {
name: "hello",
sex: "man"
}
console.log({...obj}); // 用于对象时要用{},否则不会出现或报错
对象要用 { } 才会正常运行,不会报错。
3、字符串转数组
// 字符串转数组
let str = "goodMoring";
let arry = [...str]
console.log(arry);
将字符串的每个字符都剥离开,并转换成数组:
4、复制(浅拷贝)
// 复制
let obj1 = { name: "lemon" }
let obj2 = {...obj1}
console.log(obj2);
console.log(obj1 == obj2); // false 浅拷贝
这里是浅拷贝,对象的内存地址是不一样的,只是他们的值一样而已,所以返回的是false。
5、合并
// 合并
let obj3 = { sex: "男" };
let obj4 = { address: "北京"};
let obj5 = { name:"jerry", ...obj3, ...obj4, ...obj1}
console.log(obj5);
如果对象对应的值里有相同的名,则后面的会覆盖前面的值。
持续更新
这里是扩展运算符的浅显理解和用法,后面若又理解或相关方法将会持续更新。