几种数组去重的方法

<script type="text/javascript">
window.onload=function(){
/*数组去重方法一*/
/*var arr=[1,1,2,545,5,15,156,1,5,15];

var arr1=[];

for(var i=0;i<arr.length;i++){

if(arr1.indexOf(arr[i])==-1){
arr1.push(arr[i]);
};
};
alert(arr1);

*/
/*数组去重方法二*/
/* var arr0=[1,1,5,5,2,3,2,6,56,3,4,5];
var arr2=[];
var repeat={};

for(var i=0;i<arr0.length;i++){
if(!repeat[arr0[i]]){
repeat[arr0[i]]=true;
arr2.push(arr0[i]);
};
};
console.log(arr2);

*/
/*数组去重三*/
/* var arr=[1,1,103,3,2,5,6,15,103,6];
var arr1=[];
var request;
for(var i=0;i<arr.length;i++){
request=false;
for(var j=0;j<arr1.length;j++){
if(arr[i]==arr1[j]){
request=true;
break;
};
};
if(!request){
arr1.push(arr[i]);
};
};
alert(arr1);*/
/*数组去重四*/
var arr=[5,1,103,3,2,5,6,15,103,6];
arr.sort(function(a,b){
return a-b;
});
for(var i=0;i<arr.length;i++){
if(arr[i]==arr[i+1]){
arr.splice(i+1,1);
};
};
alert(arr);
}
</script>

时间: 2024-10-14 09:57:08

几种数组去重的方法的相关文章

JavaScript 几种数组去重的方法

一.利用for嵌套for,然后splice去重 let arr=[5,5,5,12,12,-3,33,33,35,8]; for( let i=0; i<arr.length;i++){ for(let k=i+1;k<arr.length;k++){ if(arr[i]===arr[k]){ arr.splice(i,1); i--; } }} console.log(arr) 二.Set方法去重 let arr = [1,2,2,3,4,3,1,6,7,3,5,7]; let s1 = n

js 数组去重的方法总结

想沉淀一下自己.代码改变世界~~~ 1.利用Array.from代码如下 1 var arr = [1,2,3,4,3,2,1] 2 function unique(arr){ 3 return Array.from(new Set(arr)) 4 } 5 console.log(unique(arr)) 2.利用es6(...)拓展运算符.demo 1 var arr = [1,2,3,4,3,2,1] 2 function unique(arr){ 3 return [...new Set(

数组去重的方法总结

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>数组去重的 3种方法</title> </head> <body> <script type="text/javascript"> var demoAr = [3,4,5,5,7,2,1,4,3]; /

js数组去重的方法

1.如果不借助任何方法,初级写法应该是: function unique(arr){ var res=[]; for(var i=0,len=arr.length;i<len;i++){ var obj = arr[i]; for(var j=0,jlen = res.length;j<jlen;j++){ if(res[j]===obj) break; } if(jlen===j)res.push(obj); } return res; } var arr=[1,1,'2','1',3,4]

Javascript中的数组去重-indexof方法

在Javascript中,有时我们会用到数组去重.我在这里给大家介绍一下本人认为最简单实用的一种方法-indexOf()去重. 1 var arr = [1,1,1,2,2,2,3,3,4,5,6,2,1]; 2 var arr2 = []; 3 for(var i = 0;i < arr.length;i++){ 4 if(arr2.indexOf(arr[i]) == -1){ 5 arr2.push(arr[i]) 6 } 7 } 8 console.log(arr2) //[1,2,3,

javaScript常见的五种数组去重(转载)

JavaScript的数组去重问题在许多面试中都会遇到,现在做个总结 先来建立一个数组 var arr = [1,2,3,3,2,'我','我',34,'我的',NaN,NaN]; ▓▓▓▓▓▓ 第一种 思路:建立一个临时数组,用for循环去依次判断arr中的每个项在临时数组中是否有相同的值,如果没有则将这个值添加到临时数组,如果有相同的值则不添加,最后返回这个临时数组 代码: 1 Array.prototype.removeDuplicate = function(){ 2 var n = [

5个数组去重的方法

1.遍历数组法 最简单的去重方法:新建一新数组,遍历传入数组,值不在新数组就加入该新数组中:注意点:判断值是否在数组的方法“indexOf”是ECMAScript5 方法,IE8以下不支持,需多写一些兼容低版本浏览器代码 function unique1(array){ var n = []; for(var i = 0; i < array.length; i++){ //如果当前数组的第i已经保存进了临时数组,那么跳过,否则把当前项push到临时数组里面 if (n.indexOf(arra

indexof实现数组去重的方法,有三个版本,一个Js版本,2个augular版本

先上Js的简化版本的数组去重,需要M层控制数据 大妈 1 var aa = [1,3,4,5,6,23,523,6,123,'1',12,'刘','刘','刘','翔',12,123,214,'1','3','刘翔','刘翔']; 2 3 function arr(arr){ 4 var result = []; 5 for (var i=0;i<arr.length;i++) { 6 if (result.indexOf(arr[i]) == -1) { 7 result.push(arr[i

数组去重--ES6方法

数组去重方法1:用es6的set和...扩展运算符 let arr = [1,2,3,4,4,5,2]; console.log([...new Set(arr)]) // [1, 2, 3, 4, 5] ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. const s = new Set(); [2, 3, 5, 4, 5, 2, 2].forEach(x => s.add(x)); for (l