美文网首页js
ES6数组扩展

ES6数组扩展

作者: 易路先登 | 来源:发表于2019-06-18 08:13 被阅读79次
    1新增api
    1. Array.of(arg1,arg2,,,)。将arg1,arg2,,,等这堆数据转换一个数组。
    console.log(Array.of(1,2,'1','2'));//[1,2,‘1’,‘2’]
    
    1. Array.from(list)。将伪数组或集合转换为真正的数组。如函数的参数伪数组arguments,他不能使用真正数组的forEach方法等进行遍历,处理如下即可:
    function test(){
            //arguments是个伪数组,不能直接使用forEach方法遍历
        Array.from(arguments).forEach(function(item){
                console.log(item);
        })
    }
    test(1,2,3);//1,2,3
    
    1. Array.from(list,fn)。相当于map遍历。代码如下:
    let arr = Array.from([1,2,3],function(item){
        return item*2;
    })
    console.log(arr);//[2, 4, 6]
    
    1. arr.fill(arg1,start,end);将数组arr中下标从start开始到end结束的元素替换为arg1,如果start,end不给,那么将整个数组元素替换为arg1。
    [0,1,2, 3,4,5, 6].fill(7);//[7,7,7,7,7,7,7]
    [0,1,2, 3,4,5, 6].fill(7,1,3);//[0,7,7,7,4,5,6]
    
    1. let...of遍历,共三种用法,代码如下:
    let arr = ['1','2','3'];
    for(let index of arr.keys()){
       console.log(index);
    }//0 1 2
    for(let value of arr.values()){
       console.log(value );
    }//1 2 3
    for(let [index,value] of arr.entries()){
       console.log(index+'+'+value);
    }//0,1  1,2  2,3
    
    1. arr.find(function(item){return boolearn;})在arr中查找符合条件的元素,返回第一个符合条件的元素。
    let arr = [1,2,3,4,5,6,NaN];
    console.log(arr.find(function(item){
        return item>3;
    }));//4
    
    1. arr.findIndex(function(item){return boolearn;})在arr中查找符合条件的元素,返回第一个符合条件的元素。
    let arr = [1,2,3,4,5,6,NaN];
    console.log(arr.findIndex(function(item){
        return item>3;
    }));//3
    
    1. arr.includes(arg)判断数组arr中是否包含arg,arg可以是NaN。
    let arr = [1,2,3,4,5,6,NaN];
    console.log(arr.includes(NaN));//true
    

    相关文章

      网友评论

        本文标题:ES6数组扩展

        本文链接:https://www.haomeiwen.com/subject/jlxxqctx.html