javascript如何实现删除数组里面的重复元素

第一种方法:

首先是遍历数组每个元素,比如先遍历第一个元素,然后和后面的元素进行比较,后面元素有相同的就把后面相同的元素删除,以此类推,实现删除相同元素的目的

javascript 复制代码
let nums1 =[2,12,4,2,12,56,4,200,4,12,8,23]

    for(let i=0;i<nums1.length;i++)
    {
        for(let j=i+1;j<nums1.length;j++)
        {
            if(nums1[i]==nums1[j])
            {
                nums1.splice(j,1)
                j--
            }
        }
    }
    console.log(nums1)

这种方法效率比较低,算法复杂度是O(n^2)

第二种方法

首先定义一个空数组n2

接着遍历数组,并且与数组n2里的元素进行比较,如果有不一致的就加入到n2数组里面,有一致的不加入

javascript 复制代码
nums1 =[2,12,4,2,12,56,4,200,4,12,8,23]
    nums2=[]
    for(let num of nums1)
    {
        
        if(nums2.indexOf(num)===-1)
        {
            nums2.push(num)
        }
    }
    console.log(nums2)
相关推荐
钛态14 小时前
前端安全防线:CSRF 攻击链路与双重 Token 校验的工程实现
前端·vue·react·web
辞旧 lekkk15 小时前
【Redis初阶】常见数据类型
开发语言·数据库·c++·redis·学习·缓存·bootstrap
张拭心15 小时前
技术管理笔记:让我“燃尽”的一天
前端
帅次15 小时前
Kotlin 与 Java 互操作:混合工程里的平台类型与 API 边界
java·开发语言·kotlin·suspend·nullable
不好听61316 小时前
BFF 架构实战:从前端直调 API 到加入中间层
前端·架构
不好听61316 小时前
前端跨域完全指南:从为什么报错到三种解决方案
前端
三84416 小时前
路由策略/控制 配置双点双向路由重发布
服务器·前端·javascript
Qimooidea17 小时前
祁木 CAD Translator 工程图纸出海实战指南
服务器·前端·安全
小林ixn17 小时前
从BFF到SSE:我在Vue项目里藏了个“AI翻译官”
前端·vue.js·vite
dtq042417 小时前
C语言-结构体详解
c语言·开发语言·学习