方法 1
let array = [1, 5, 2, 3, 4, 2, 3, 1, 3, 4]
function unique() {
let arrReal = Array.from(new Set(array))
console.log(arrReal)
}
unique(array)
方法 2
let array = [1, 5, 2, 3, 4, 2, 3, 1, 3, 4]
function unique(array) {
let result = []
array.forEach(item => {
if (result.indexOf(item) === -1) {
result.push(item)
}
})
console.log(result)
}
unique(array)
方法 3
let array = [1, 5, 2, 3, 4, 2, 3, 1, 3, 4]
function unique(array) {
let result = array.filter((item, index) => {
return array.indexOf(item) === index
})
console.log(result)
}
unique(array)
方法 4
let array = [1, 5, 2, 3, 4, 2, 3, 1, 3, 4]
function unique(array) {
let result = array.reduce((pre,item) => {
return pre.includes(item) ? pre : [...pre,item]
},[])
console.log(result)
}
unique(array)
方法 5
let array = [1, 5, 2, 3, 4, 2, 3, 1, 3, 4]
function unique(array) {
let result ={}
array.forEach((item,index) => {
result[array[index]] = ''
console.log(result)
});
result = Object.keys(result).map(item=>~~item)
console.log(result)
}
unique(array)
方法 6
let array = [1, 5, 2, 3, 4, 2, 3, 1, 3, 4]
function unique(array) {
let result = []
loop: for (let i = 0; i < array.length; i++) {
for (let j = i + 1; j < array.length; j++) {
if (array[i] === array[j]) {
continue loop
}
}
result.push(array[i])
}
console.log(result)
}
unique(array)
方法 7
let array = [1, 5, 2, 3, 4, 2, 3, 1, 3, 4]
function unique(array) {
let result = []
let temp = array.sort()
for (let i = 0; i < array.length; i++) {
if (temp[i] !== temp[i + 1]) {
result.push(array[i])
}
}
console.log(result)
}
unique(array)