zoukankan      html  css  js  c++  java
  • JS实现数组去重

    I.使用ES6的Set进行去重

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>数组去重</title>
        </head>
        <body>
            <script type="text/javascript">
                function array_dedup(arr){
                    return Array.from(new Set(arr));
                }
                let arr=array_dedup([1,2,3,3,4,5,5,6]);
                console.log(arr);//1,2,3,4,5,6
                
            </script>
        </body>
    </html>

    使用此方法非常简单,通俗易懂。该方法主要利用了Set内部结构的原理,然后通过Array.from()方法将set转换为数组,一点就通。

    II.使用indexof去重

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>数组去重</title>
        </head>
        <body>
            <script type="text/javascript">
                let arrs=[1,2,3,4,5,5,6];
                function arraydedep(arr){
                    let temp=[];
                    for(let i=0;i<arr.length;i++){
                        if(temp.indexOf(arrs[i])==-1){
                            temp.push(arrs[i])
                        }    
                    }
                    return temp;
                }
                let arr=arraydedep(arrs);
                console.log(arr);//1,2,3,4,5,6
            </script>
        </body>
    </html>

    这一种方法可能在我开发过程中遇到最多的方法吧!

    III.扩展运算符和Set实现去重

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>数组去重</title>
        </head>
        <body>
            <script type="text/javascript">
                let arr=[1,2,2,3,3,4,5];
                let unique=[...new Set(arr)];
                console.log(unique);//输出1,2,3,4,5
                
            </script>
        </body>
    </html>

    此方法更是舒服,代码简单,容易上手和阅读。

  • 相关阅读:
    array with objects sort
    Vue组件之区域滚动
    ajax跨域请求问题总结
    常见contentType
    Sublime Text 3实用快捷键大全
    具有层级关系的扁平化数组转化成树形结构数组
    阿里云地图选择器
    前端解析二进制文件流并下载
    tool.js日常工具方法
    git操作
  • 原文地址:https://www.cnblogs.com/jjgw/p/11574495.html
Copyright © 2011-2022 走看看