当前位置: 首页 > Web前端 > HTML

-javaScript-数组去重方法总结(2017)

时间:2023-04-03 01:08:25 HTML

现在需要对以下数组进行去重[1,2,3,3,3,'0','1','2','test','repeat','重复',NaN,NaN,false,false];方法一:ES6Set()letarr=[1,2,3,3,3,'0','1','2','Test','Repeat','Repeat',NaN,NaN,false,错误的];arr=[...新设置(arr)];//去重后:[1,2,3,'0','1','2','Test','Repeat',NaN,false]Set是ES6新增的集合,取值收藏中不再赘述。...运算符会将可遍历对象转换为数组。方法二:使用对象letarr=[1,2,3,3,3,'0','1','2','test','repeat','repeat',NaN,NaN,false,false];letobj={};lettemp=[];for(leti=0;i0){if(Object.is(arr[0],arr[1])){//Object.is()用于比较2个值,比===更可靠例如,Object.is(NaN,NaN)会判断为真arr.shift();}else{temp.push(arr.shift());}}//该方法会清空原数组,可以复制一个数组进行操作console.log(temp)//去重后:['0',1,'1','2',2,3,NaN,false,'test','repeat']方法四:forinletarr=[1,2,3,3,3,'0','1','2','test','repeat','repeat',NaN,NaN,false,false];lettemp=[];for(leti=0;i