JavaScript学习笔记—数组去重实例
编写代码去除数组中重复的元素
const arr = [1,2,1,3,2,2,4,5,5,6,7]; // 分别获取数组中的元素 for(let i = 0; i < arr.length; i++) { // 获取当前值后边的所有值 for(let j = i + 1; j < arr.length; j++) { // 判断两个数是否相等 if(arr[i] === arr[j]) { // 出现重复元素,删除后边的元素 arr.splice(j, 1); /* 当arr[i]和arr[j]相同时,会删除j位置的元素,然后j+1位置的元素,会变成j位置的元素,而j位置已经比较过了,不会重复比较,所以会出现漏比较的情况 解决办法:当删除一个元素后,需要将该位置的元素再比较一遍 */ j--; } } } console.log(arr);
简便方法:
const arr = [1,2,1,3,2,2,4,5,5,6,7]; // 分别获取数组中的元素 for(let i = 0; i < arr.length; i++) { const index = arr.indexOf(arr[i], i+1); if(index !== -1){ // 出现重复内容 arr.splice(index, 1); i--; } } console.log(arr);
不破坏原数组的简便方法:
const arr = [1,2,1,3,2,2,4,5,5,6,7]; const newArr = []; // 分别获取数组中的元素 for(let ele of arr) { if(newArr.indexOf(ele) === -1){ newArr.push(ele); } } console.log(newArr);
分类:
JavaScript
标签:
JavaScript学习笔记
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)