• javascript之数组去重方法


    数组去重方式一:利用ES6 set方法数组去重

    语法:

    Array.from(new Set(oldArr))
    function sore1(arr) {
        return Array.from(new Set(arr))
    }

    数组去重方式二:利用for嵌套for,然后用splice去重(ES5方法)

            function sore2(arr) {
                for(var i=0; i<arr.length;i++) {
                    for(var j= i + 1;j<arr.length;j++) {
                        if(arr[i] == arr[j]) {
                            arr.splice(j,1);
                        }
                    }
                }
                return arr;
            } 

    数组去重方式三:利用indexOf去重

           let indexArr = [];
            function sore3(arr) {
                if(!Array.isArray(arr)) {
                    console.log('type error!')
                }
                for(var k=0; k<arr.length;k++) {
                    if(indexArr.indexOf(arr[k]) == -1) {
                        indexArr.push(arr[k]);
                    }
                }
                return indexArr;
            }

    数组去重方式四:利用includes

            var includeArr = [];
            function sore4(arr) {
                for(var n=0;n<arr.length;n++) {
                    if(!includeArr.includes(arr[n])) {
                        includeArr.push(arr[n]);
                    }
                }
                return includeArr;
            }

    数组去重方式五:利用filter

            function sore5(arr) {
                var tempArr = arr.filter((item,index,arr) => {
                    return arr.indexOf(item) == index;
                })
                return tempArr;
            }

    数组去重方式六:...new Set(arr)

    var temp = [...new Set(arr)];

     --仅用作学习记录

  • 相关阅读:
    202231
    搞机经验总结
    Maven最佳实践
    win10双系统安装
    C#前台js调用后台代码和后台代码调用前台js
    DataList的使用+分页
    异步中的跨线程赋值问题
    javascript中async/await常用场景
    20. 有效的括号
    53. 最大子数组和(动态规划)
  • 原文地址:https://www.cnblogs.com/emilyzz/p/14086451.html
Copyright © 2020-2023  润新知