再ES6中新增了一些API接口。
Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括ES6新增的数据结构Set和Map)
Array.of方法用于将一组值,转换为数组。
数组的拓展
新增了一些内置的API的接口
Array.of() 方法
1 2 3 4 5 6 7 8 9
| { let array1 = Array.of(1, 2, 3, 4, 5); console.log(array1); let array2 = Array.of(); console.log(array2); }
|
Array.from() 方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| { let array1 = document.querySelectorAll('p'); for (let i = 0; i < array1.length; i++) { console.log(array[i].textContent); } let array2 = Array.from(array1); array2.forEach(function (item) { console.log(item.textContent); }); let array3 = Array.from([1, 2, 3], function (item) { return item * 2; }) console.log(array3); }
|
fill 方法
1 2 3 4 5 6 7 8 9 10 11 12
| { let array1 = [1, 'a', {}, undefined]; console.log(array1.fill(5)); let array2 = [1, 2, 3, 4, 5, 6]; console.log(array2.fill(5, 1, 3)); }
|
keys values entries 方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| { let array = ['a', 'b', 'c', 'd', 'e']; for (let index of array.keys()) { console.log(index); } for (let value of array.values()) { console.log(value); } for (let [index, value] of array.entries()) { console.log(index, '=>', value); } for (let entries of array.entries()) { console.log(entries); } }
|
copyWithin() 方法
1 2 3 4 5 6 7 8
| { let array = ['a', 'b', 'c', 'd', 'e']; console.log(array.copyWithin(0, 3, 5)); }
|
find() 方法 findIndex() 方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| { let array = [1, 2, 3, 4, 5, 6]; let n = array.find(function (item) { return item > 4; }); console.log(n); let s = array.findIndex(function (item) { return item > 4; }); console.log(s); }
|
includes() 方法
1 2 3 4 5 6 7 8
| { let array = ['a', 'b', NaN]; console.log(array.includes('b')); console.log(array.includes(NaN)); }
|