- 展开语法(Spread syntax):
- 可以在函数调用/数组构造时,将数组表达式或者string在语法层面展开;
- 还可以在构造字面量对象时, 将对象表达式按key-value的方式展开;
- 展开语法的场景:
- 在函数调用时使用;
- 在数组构造时使用
- 在构建对象字面量时,也可以使用展开运算符,这个是在ES2018(ES9)中添加的新特性
- 注意:展开运算符其实是一种浅拷贝
const names = ["小余","小满","洛佬","喜多川"]
function foo(name1,name2,...args){
console.log(name1,name2,args);
}
foo(...names)
const str = "Hello"
foo(...str)
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/c34f950a4f835ad94bf01ad9ad78221d.png)
function foo(name1,name2,...args){
console.log(name1,name2,args);
}
const obj = {
name:"小余",
age:20
}
const obj2 = {
...obj,
sex:"男",
address:"福建"
}
console.log(obj2);
const names = ["xiaoyu","小满","大满"]
const names2 = [...names,"园长","cool"]
console.log(names2);
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/45a18e8c36e7159686ec1d7b6a5b7eb3.png)