javascript数组去重
Posted damon35868
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript数组去重相关的知识,希望对你有一定的参考价值。
1.使用空数组利用indexOf去重
- 首先定义一个空数组
- 然后循环遍历数组逐个对比新数组中是否存在该值,如果不存在则push
1 var arr = [1,1,1,2,2,2,3,3,3]; 2 var nArr = []; 3 4 for(let i=0; i<arr.length;i++){ 5 if(nArr.indexOf(arr[i]) === -1) nArr.push(arr[i]); 6 }
2.循环嵌套去重法
- 两个循环嵌套for去判断每个值和其他值是否相同,如果相同则删除,此操作直接在原数组中删除
var arr = [1,1,1,2,2,2,3,3,3]; 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); j--; } } }
3.对象属性不可重复去重法
- 利用对象属性不能重复的机制去判断数组是否重复
var arr = [1,1,1,2,2,2,3,3,3]; var nArr= []; var obj = {}; for (var i = 0; i < arr.length; i++) { if (!obj[arr[i]]) { nArr.push(arr[i]) obj[arr[i]] = 1 } else { obj[arr[i]]++ } }
以上是关于javascript数组去重的主要内容,如果未能解决你的问题,请参考以下文章