1. Array.from()
语法:
Array.from(arrayLike[, mapFn[, thisArg]])
arrayLike
类数组对象mapFn
如果指定了该参数,新数组中的每个元素会执行该回调函数(类似数组的map()
)thisArg
Array.from(document.getElementsByTagName(‘div‘));
如果浏览器还没部署这个方法:
const toArray = (() =>
Array.from ? Array.from : obj => [].slice.call(obj)
)();
2. Array.of()
Array.of(7); // [7]
Array.of(1, 2, 3); // [1, 2, 3]
Array(7); // [ , , , , , , ]
Array(1, 2, 3); // [1, 2, 3]
3. find()和findIndex()
说明: 这两个类是filter() 方法,区别在于filter返回是数组,find()和findIndex() 返回是元素。
function isBigEnough(element) {
return element >= 15;
}
[12, 5, 8, 130, 44].find(isBigEnough); // 130
4. fill()
var numbers = [1, 2, 3]
numbers.fill(1);
// results in [1, 1, 1]
5. entries() 、keys()、values()
遍历数组
{
let arr = [1, 2, 3];
for (let item of arr.values()) {
console.log(item);
}
for(let index of arr.keys()) {
console.log(index);
}
for(let [index,item] of arr.entries()) {
console.log(index,item);
}
}
6. includes()
替代indexof
,尽量不使用indexof
,indexof
不够语义化。
let a = [1, 2, 3];
a.includes(2);
// true
a.includes(4);
// false