1.Array.of()
{
let arr=Array.of(3,4,7,8,11);
console.log(arr)
// [3, 4, 7, 8, 11]
let empty=Array.of();
console.log(empty)
//[]
}
Array.of() 方法创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。
Array.of() 和 Array 构造函数之间的区别在于处理整数参数:Array.of(7) 创建一个具有单个元素 7 的数组,而 Array(7) 创建一个包含 7 个 undefined 元素的数组。
2.Array.from(),将dom集合转化成数组,可以用forEach方法遍历
Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括 ES6 新增的数据结构 Set 和 Map)。
{
let p=document.querySelectorAll('p');
let pArr=Array.from(p);
pArr.forEach(function(item){
console.log(item.textContent)
})
//111 222 333
console.log(Array.from([1,3,5],function(item){return item*2}));
//[2, 6, 10]
}
3.Array.fill()
{
console.log('fill',[1,'a',undefined].fill(7))
//[7, 7, 7]
console.log('fill-2',['a','b','c'].fill(7,1,3));
//["a", 7, 7] 从起始位置1开始结束位置3替换成7
}
4.Array的keys(),values(),entries()方法
keys()用来获取数组的下标,values()获取数组的值,entries()获取数组的下标和值
{
for(let index of ['1','c','ks'].keys()){
console.log(index)
}
//0 1 2
for(let value of ['1','c','ks'].values()){
console.log(value)
}
//1 c ks 有兼容性问题
for(let [index,value] of ['1','c','ks'].entries()){
console.log(index,value)
}
//0 1
//2 c
//3 ks
}
5.Array.copyWithin()
{
console.log([1,2,3,4,5].copyWithin(0,3,4))
//[4, 2, 3, 4, 5]
}
6.Array.find()和Array.findIndex()
数组实例的find方法,用于找出第一个符合条件的数组成员。它的参数是一个回调函数,所有数组成员依次执行该回调函数,直到找出第一个返回值为true的成员,然后返回该成员。如果没有符合条件的成员,则返回undefined。
数组实例的findIndex方法的用法与find方法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1。
{
console.log([1,2,3,4,5,6].find(function(item){
return item>3;
}))
//4 注意find只找出第一个满足的值
console.log([1,2,3,4,5,6].findIndex(function(item){
return item>3;
}))
//3 返回符合条件的下标
}
7.Array.includes()
{
console.log([1,2,NaN].includes(1))
//true
console.log([1,2,NaN].includes(NaN))
//true
}
网友评论