數組去重做爲js的經典面試題,比較考察js基礎,在實際應用中也有較多的場景。es6
function oSort( arr ) {
var result = {};
var newArr = [];
for (var i = 0 ; i < arr.length; i ++ ) {
if (! result[arr[i]]) {
newArr.push(arr[i]);
result[arr[i]] = 1;
}
}
return newArr;
}
複製代碼
function oSort2( arr ) {
var n = [];
for (var i = 0 ; i <arr.length; i ++ ) {
if (arr.indexOf(arr[i])== i) {
n.push(arr[i]);
}
}
return n;
}
複製代碼
function oSort3 ( arr ) {
var n = [];
for (var i = 0 ; i <arr.length; i ++ ) {
if (n.indexOf(arr[i])<0 ) {
n.push(arr[i]);
}
}
return n;
}
複製代碼
const unique = arr => {
return [...new Set(arr)]
}
複製代碼
const unique = arr => {
return arr.filter((ele, index, array) => {
return index === array.indexOf(ele)
})
}
複製代碼