ES6为数组扩展

Array.of()函数

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

Array.of(1,2,3,4,5);
//结果:[1,2,3,4,5]

Array.from( )函数

函数作用:可以将类似数组的对象或者可遍历的对象转换成真正的数组.
有哪些是类似数组的对象?最常见的就是调用getElementsByTagName方法得到的结果,它就是一个类似数组的结果,getElementsByTagName方法一定不陌生吧,我们来看一下:

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

Array.from函数其中一个用处就是将字符串转换成数组

  let str = 'hello';
    Array.from(str);
    //结果:["h", "e", "l", "l", "o"]

find( )函数

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

 let arr = [1,2,3,4,5,6];
    arr.find(function(value){
        return value > 2;
    });
    //结果:value=3

findIndex( )函数

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

  let arr = [7,8,9,10];
     arr.findIndex(function(value){
         return value > 8;
     });
    //结果:2

fill( )函数

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

let arr = [1,2,3];
    arr.fill(4);
    //结果:[4,4,4]

entries( )函数

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

for(let [i,v] of ['a', 'b'].entries())
    {
        console.log(i,v);
    }
    //0 "a"
    //1 "b"

keys( )函数

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

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

values( )函数

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

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

数组推导

数组推导:用简洁的写法,直接通过现有的数组生成新数组。
举个例子:加入我们有一个数组,我在这个数组的基础上,每个元素乘以2,得到一个新数组。

 var arr1 = [1, 2, 3, 4];
    var arr2 = [for(i of arr1) i * 2];
    console.log(arr2);
    //结果: [ 2, 4, 6, 8 ]

总结:ES6为数组带来了很多很实用的方法:Array.of( )、Array.from( )、find( )、findIndex( )、fill( )、entries( )、values(),此外还有一个更简洁的语法:数组推导,能让我们更方便地生成一个新数组。

你可能感兴趣的:(ES6为数组扩展)