js中ES6规范的扩展预算符
首先说明一下这个是啥
将一个数组转换为用逗号隔开的参数序列,开发中主要用于数组合并和函数调用,是ES6 新增的语法。
废话不多说,我们来尝试一下
//扩展运算符 '...' 可以将数组转化为逗号分隔的参数序列
const tfboys=['易烊千玺','王源','王俊凯'];
//声明函数
function chunwan(){
console.log(arguments);
//arguments就是接收传进来的参数的意思
//通过扩展运算符实现的是浅拷贝,修改了引用指向的值,会同步反映到新数组
}
chunwan(...tfboys)
//传进去了'易烊千玺','王源','王俊凯'
//等同于 chunwan('易烊千玺','王源','王俊凯')
有人可能会说这不是废话么,我直接传chunwan(‘易烊千玺’,‘王源’,‘王俊凯’)也能实现同样的效果
当然可以,但是学到是自己的,但是新形式附带了很多新的功能,如下
下面两个需求,
1.合并kuaizi和fenghuang两个数组,将他们变为一个叫aa的新数组
2.ttt数组添加tfboys数组进去
//怎么使用
//数组的合并
const kuaizi=['王太利','肖央'];
const fenghuang=['真意','零花'];
// const aaa=kuaizi.concat(fenghuang);普通用法
//拓展运算符怎么合并
const aaa=[...kuaizi,...fenghuang];
//拓展运算符怎么克隆
const ttt=[...tfboys];
或者将伪代码变成真正的数组进行使用,比如dom树元素变为数组形式
//将伪数组转化为真正的数组
const divs=document.querySelectorAll('div');
const divArr=[...divs];