JavaScript实现数组去重的方式

1.使用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转换为数组,一点就通。

2.使用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>

3.扩展运算符和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>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容