ES6 对数组的扩展

Alien| 阅读:3363 发表时间:2018-04-08 10:37:08 JavaScript

一、Array.of()函数

函数作用:将一组值,转换成数组

var arr=Array.of(1,2,3,4)
console.log(arr) // [1,2,3,4]

二、Array.from()函数

1.可以将类似数组的对象或者可遍历的对象转换成真正的数组。

比如:getElementsByTagName等

let ele = document.getElementsByTagName('a');
ele instanceof Array;  //结果:false,不是数组
ele instanceof Object; //结果:true,是对象
Array.from(ele) instanceof Array;    //结果:true,是数组

2.将字符串转换成数组

 let str='hello';
 let newarr=Array.from(str)
 console.log(newarr) // ['h','e','l','l','o']

三、find()函数

函数作用:找出数组中符合条件的第一个元素。

let arr=[1,3,5,6,7]
let x=arr.find(function(num){
    return num<8 // 1
    num>2 //3
    num>9 // underfined
})

可以看出 find()函数的参数是一个匿名函数,数组的每个元素都会进入匿名函数执行,直到结果为true,find函数就会返回value的值,如果所有元素都不符合匿名函数的条件,find( )函数就会返回undefind。

四、findIndex()函数

函数作用:返回符合条件的第一个数组成员的位置。

let arr=[1,3,5,6,7];
let x=arr.findIndex(function(num){
     return num<8 // 0
     num>2 // 1
     num>9   // -1
})

可以看出数组元素是从0算起;不符合匿名函数的条件,findIndex( )函数就会返回-1。

五、fill( 所填元素,起始位置,结束位置 )函数

函数作用:用指定的值,填充到数组。

let arr=[1,3,5,6,7]
arr.fill(10,0,1)
console.log(arr) // [10,3,5,6,7]

可以看出会覆盖掉原数组的值

六、entries( )函数

函数作用:对数组的键值对进行遍历,返回一个遍历器,可以用for..of对其进行遍历。

for(let[key,value] of ['aa','bb'].entries()){
   console.log(key,value); // 0 'aa' 1 'bb'
}

七、keys( )函数

对数组的索引键进行遍历,返回一个遍历器。

for(let index of ['aa','bb'].keys()){
    console.log(index); // 0 1 
}

八、values( )函数

作用:对数组的元素进行遍历,返回一个遍历器。

for(let value of ['aa','bb'].values()){
    console.log(value); // aa bb 
}


本文标签: JavaScript
*本文由Alien发表并编辑,转载此文章请附上出处及本页链接。如有侵权,请联系本站删除。

热门推荐