1.含义:展开运算符(spread operator)——允许一个表达式在某处展开。
2.限制:es6中此展开运算符只对可遍历对象有用,即Array,Set,String对象,Object不可用。
3.用法:
(1)多个参数函数调用
const args = [0, 1, 2];
test = (x, y, z) => { }
test(...args);
上述代码中,args中的0、1、2对应赋值test的x、y、z参数
(2)用于解构赋值
let [arg1,arg2,...arg3] = [1, 2, 3, 4];
arg1 //1
arg2 //2
arg3 //['3','4']
不过要注意,解构赋值中展开运算符只能用在最后:
let [arg1,...arg2,arg3] = [1, 2, 3, 4]; //报错
(3)数组字面量中使用展开运算符
直接将两个数组合并
let [arg1,arg2,...arg3] = [1, 2, 3, 4];
arg1 //1
arg2 //2
arg3 //['3','4']
网友评论