// 数组去重 并排序方案一
function case1(arrSrc) {
const ret = arrSrc.reduce((pre, cur) => {
if (!pre.includes(cur)) {
pre.push(cur)
}
return pre // 不要少了这一行
}, [])
return customSort(ret)
}
// 数组去重并排序方案二
function case2(arrSrc) {
const ret = Array.from(new Set(arrSrc))
return customSort(ret)
}
// 数组去重并排序方案三
function case3(arrSrc) {
const ret = []
for (const i of arrSrc) {
if (!ret.includes(i)) {
ret.push(i)
}
}
return customSort(ret)
}
function customSort(data) {
return data.sort((a, b) => a - b)
}
function findOneInObject(data) {
const result = []
for (const item of Object.entries(data)) {
if (item[1] === 1) {
result.push(item[0])
}
}
return result
}
// 找出数组中只出现一次的数
function case4(arrSrc) {
const ret = arrSrc.reduce((pre, cur) => {
if (cur in pre) {
pre[cur] += 1
} else {
pre[cur] = 1
}
return pre // 不要少了这一行
}, {})
return findOneInObject(ret)
}
const arrSrc = [1, 1, 2, 2, 8, 3, 4, 4, 5, 5, 6, 8, 7, 7, 9]
console.log('case1=', case1(arrSrc))
console.log('case2=', case2(arrSrc))
console.log('case3=', case3(arrSrc))
console.log('case4=', case4(arrSrc))
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。