如何详细探讨JavaScript数组去重的多种方法?

2026-04-05 17:1612阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计462个文字,预计阅读时间需要2分钟。

如何详细探讨JavaScript数组去重的多种方法?

目录

一、Set去重

二、双重for循环去重

三、利用indexOf去重

四、利用includes去重

五、filter去重

六、Map去重

总结

一、Set去重

javascriptfunction funSet(arr) { return Array.from(new Set(arr));}

二、双重for循环去重

如何详细探讨JavaScript数组去重的多种方法?

javascriptfunction funDoubleFor(arr) { let result=[]; for (let i=0; i 三、利用indexOf去重

javascriptfunction funIndexOf(arr) { let result=[]; for (let i=0; i 四、利用includes去重

javascriptfunction funIncludes(arr) { let result=[]; for (let i=0; i 五、filter去重

javascriptfunction funFilter(arr) { return arr.filter((item, index, array)=> array.indexOf(item)===index);}

六、Map去重

javascriptfunction funMap(arr) { let map=new Map(); for (let item of arr) { map.set(item, 1); } return Array.from(map.keys());}

目录
  • 一、Set去重
  • 二、双重for循环去重
  • 三、利用indexOf去重
  • 四、利用icludes去重
  • 五、filter
  • 六、Map
  • 总结

一、Set去重

function funSet(arr){ return Array.from(new Set(arr)); }

二、双重for循环去重

function funFor(arr){ for(let i=0,len=arr.length;i<len;i++){ for(let j=i+1,len=arr.length;j<len;j++){ if(arr[i]===arr[j]){ arr.splice(j,1); len--; j--; } } } return arr; }

三、利用indexOf去重

function funIndex(arr){ let newArr=[]; for(let i=0;i<arr.length;i++){ if(newArr.indexOf(arr[i])===-1){ newArr.push(arr[i]) } } return newArr; }

四、利用icludes去重

function funInclude(arr){ let newArr=[]; for(let i=0;i<arr.length;i++){ if(!newArr.includes(arr[i])){ newArr.push(arr[i]) } } return newArr; }

五、filter

function funFilter(arr){ return arr.filter(function(item,index){ return arr.indexOf(item,0)===index; }) }

六、Map

function funMap(arr){ let map=new Map(); let newArr=[]; for(let i=0,len=arr.length;i<len;i++){ if(map.has(arr[i])){ map.set(arr[i],true); }else{ map.set(arr[i],false); newArr.push(arr[i]); } } return newArr; }

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注自由互联的更多内容!

本文共计462个文字,预计阅读时间需要2分钟。

如何详细探讨JavaScript数组去重的多种方法?

目录

一、Set去重

二、双重for循环去重

三、利用indexOf去重

四、利用includes去重

五、filter去重

六、Map去重

总结

一、Set去重

javascriptfunction funSet(arr) { return Array.from(new Set(arr));}

二、双重for循环去重

如何详细探讨JavaScript数组去重的多种方法?

javascriptfunction funDoubleFor(arr) { let result=[]; for (let i=0; i 三、利用indexOf去重

javascriptfunction funIndexOf(arr) { let result=[]; for (let i=0; i 四、利用includes去重

javascriptfunction funIncludes(arr) { let result=[]; for (let i=0; i 五、filter去重

javascriptfunction funFilter(arr) { return arr.filter((item, index, array)=> array.indexOf(item)===index);}

六、Map去重

javascriptfunction funMap(arr) { let map=new Map(); for (let item of arr) { map.set(item, 1); } return Array.from(map.keys());}

目录
  • 一、Set去重
  • 二、双重for循环去重
  • 三、利用indexOf去重
  • 四、利用icludes去重
  • 五、filter
  • 六、Map
  • 总结

一、Set去重

function funSet(arr){ return Array.from(new Set(arr)); }

二、双重for循环去重

function funFor(arr){ for(let i=0,len=arr.length;i<len;i++){ for(let j=i+1,len=arr.length;j<len;j++){ if(arr[i]===arr[j]){ arr.splice(j,1); len--; j--; } } } return arr; }

三、利用indexOf去重

function funIndex(arr){ let newArr=[]; for(let i=0;i<arr.length;i++){ if(newArr.indexOf(arr[i])===-1){ newArr.push(arr[i]) } } return newArr; }

四、利用icludes去重

function funInclude(arr){ let newArr=[]; for(let i=0;i<arr.length;i++){ if(!newArr.includes(arr[i])){ newArr.push(arr[i]) } } return newArr; }

五、filter

function funFilter(arr){ return arr.filter(function(item,index){ return arr.indexOf(item,0)===index; }) }

六、Map

function funMap(arr){ let map=new Map(); let newArr=[]; for(let i=0,len=arr.length;i<len;i++){ if(map.has(arr[i])){ map.set(arr[i],true); }else{ map.set(arr[i],false); newArr.push(arr[i]); } } return newArr; }

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注自由互联的更多内容!