对象中的扩展运算符(...)用于去除参数对象中的所有可遍历属性,拷贝到当前对象中。
扩展运算符同样可以运用到对数组的操作中。
可以将数组转化为参数序列
function add(x, y) {
return x + y;
}
const numbers = [4, 38];add(...numbers) // 42
可以复制数组
const arr1 = [1, 2];
const arr2 = [...arr1];
扩展运算符可以与解构赋值结合起来,用于生成数组
const [first, ...rest] = [1, 2, 3, 4, 5];
first // 1
rest // [2, 3, 4, 5]
需要注意的是:如果将扩展运算符用于数组赋值,只能放在参数的最后一位,否则会报错。
扩展运算符还可将字符串转为真正的数组
[...'hello']
// [ "h", "e", "l", "l", "o" ]
任何Iterator接口的对象,都可以用扩展运算符转为真正的数组。
网友评论