數(shù)組去重更新啦7阏恪E偎唷!箩帚!
方法一:
var arr = [1, 2, 2, 3, 4, 5, 5, 6, 7, 7,8,8,0,8,6,3,4,56,2];
Array.from(new Set(arr))
結(jié)果: [1, 2, 3, 4, 5, 6, 7, 8, 0, 56]
方法二:
filter() 方法創(chuàng)建一個新的數(shù)組真友,新數(shù)組中的元素是通過檢查指定數(shù)組中符合條件的所有元素。
注意: filter() 不會對空數(shù)組進行檢測紧帕。
注意: filter() 不會改變原始數(shù)組盔然。
參數(shù)說明
var arr = [1, 2, 2, 3, 4, 5, 5, 6, 7, 7,8,8,0,8,6,3,4,56,2];
var arr2 = arr.filter((x, index,self)=>self.indexOf(x)===index)
console.log(arr2);
數(shù)組去重:
// 方法一:
// 利用對象的屬性不能相同的特點進行去重
//如果能查找到,證明數(shù)組元素重復(fù)了,如果沒有是嗜,添加進去
var obj = {};
var result = [];
var arr = [1, 2, 3, 3, 4, 4, 5, 5, 6, 1, 9, 3, 25, 4];
console.log(arr.length);
function aa(data) {
for (var i = 0; i < data.length; i++) {
if (!obj[arr[i]]) {
obj[arr[i]] = 1;
result.push(arr[i]);
}
}
console.log(result.length + '方法一');
console.log(result);
}
aa(arr);
// 方法二:
// 雙層循環(huán)愈案,外層循環(huán)元素,內(nèi)層循環(huán)時比較值
// 值相同時鹅搪,則刪去這個值
// 刪除元素之后站绪,需要將數(shù)組的長度也減1
var arr2 = [1, 2, 3, 3, 4, 4, 5, 5, 6, 1, 9, 3, 25, 4];
function arrData(data1) {
for (var i = 0; i < data1.length; i++) {
for (var j = i + 1; j < data1.length; j++) {
if (data1[i] == data1[j]) {
data1.splice(j, 1);
j--;
}
}
}
console.log(data1.length + '方法二');
console.log(data1);
}
arrData(arr2);