ES6语法(4)——数组的扩展
数组的扩展
##…
扩展运算符是…,好比rest参数的逆运算,讲一个数组转化为用逗号分割的参数序列。1
2
3
4console.log(...[1,2,3]);
//1,2,3
console.log(1...[1,2,3],5);
//1,2,3,4,5
用于函数调用1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23function push(array,items){
array.push(...items);
}
function add(x,y){
return x+y
}
const numbers = [3,38];
add(...numbers); //41
```
## 应用
复制数组
```javascript
//es5
const a1 = [1,2];
const a2 = a1.contact();
//es6
const a1 = [1,2];
//写法一
const a2 = [...a1];
//写法二
const [...a2] = a1;
将字符串转化为数组1
2[..."hello"]
//["h","e","l","l","o"]
Array.from()
Array.from()
方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括ES6新增的数据结构Set和Map)。
1 | //数组去重 |
数组实例的includes()
Array.prototype.includes
方法返回一个布尔值,表示某个数组是否包含给定的值,与字符串includes
方法类似。ES2016引入该方法。
1 | [1,2,3].includes(2) //true |