js 数组去重
程序员文章站
2022-05-07 11:39:31
...
js去重的多种方法:
1、通过删除原数组里面重复的数,进行去重。知识:数组反循环,indexOf。
function removeRepeat(data) { for(let i = data.length - 1; i >= 0; i--){ if (data.indexOf(data[i]) !== i) { data.splice(i, 1) } } return data; } removeRepeat([1,2,3,4,2,3,1,4,6,3,1]) // [1, 2, 3, 4, 6]
2、添加新数组往里面赋值。
function removeRepeat(data) { var newData = [] for(let i = 0; i < data.length; i++){ if (newData.indexOf(data[i]) === -1) { newData.push(data[i]); } } return newData; } removeRepeat([1,2,3,4,2,3,1,4,6,3,1]) // [1, 2, 3, 4, 6]
3、通过添加新数组、新对象进行赋值。新对象用于判断重复、新数组用于存储值。
function removeRepeat(data) { var newData = [] var val = {} for(let i = 0; i < data.length; i++){ if (!val[data[i]]) { val[data[i]] = 1; newData.push(data[i]); } } return newData; } removeRepeat([1,2,3,4,2,3,1,4,6,3,1]) // [1, 2, 3, 4, 6]