js数组的一些常用方法

发布时间:2019-08-10 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了js数组的一些常用方法脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

1、数组取差

    //es6
    arryMinus (arry1,arry2){
        let a = new Set(arry1);
        let b = new Set(arry2);
        let difference = new Set([...a].filter(x => !b.has(x)));
        return Array.from(difference);
    }
    //循环
    arryMinus (arry1,arry2){
        var arr3 = new Array();
        for(var i=0; i < arry1.length; i++){
            var flag = true;
           for(var j=0; j < arry2.length; j++){
                 if(arry1[i] == arry2[j]) {
                   flag = false;
                 }
        
             }
           if(flag){
                 arr3.push(arry1[i]);
           }
       }
       return arr3;

       
    }

2、数组取交集

     //es6
    arryIntersect (arr1,arr2){
        // 利用set方法取交集
        let a = new Set(arr1);
        let b = new Set(arr2);

        let intersect = new Set([...a].filter(x => b.has(x)));
        return Array.from(intersect);
     }
    
    arryIntersect (arr1,arr2){
     //循环判断数组a里的元素在b里面有没有,有的话就放入新建立的数组中
        var ai=0, bi=0;
        var result = new Array();
        while ( ai < a.length &amp;& bi < b.length )
        {
            if      ( a[ai] < b[bi] ) { ai++; }
            else if ( a[ai] > b[bi] ) { bi++; }
            else /* they're equal */
            {
                result.push ( a[ai] );
                ai++;
                bi++;
            }
        }
        return result;
    }

3、数组去重

     //es6
    arryUnique (array){
        // 去除数组的重复成员
        return [...new Set(array)]
    }
      arryUnique (array){
        var res = [];
        var json = {};
        for(var i = 0; i < this.length; i++){
            if(!json[this[i]]){
                res.push(this[i]);
                json[this[i]] = 1;
            }
        }
        return res;
    }

维数组转一维数组

  // 二维数组转为一维数组
    twoArrToOneArr(arr){
        return [].concat.apply([],arr);
    }

脚本宝典总结

以上是脚本宝典为你收集整理的js数组的一些常用方法全部内容,希望文章能够帮你解决js数组的一些常用方法所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。