已知以下數組,編寫一個程序將數組扁平化去併除其中重複部分數據,最終獲得一個升序且不重複的數組。javascript
let arr = [ [1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14] ] ] ], 10]
java
結果:數組
console.log([...new Set(arr.flat(Infinity))].sort((a, b) => {
return a - b
})); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
複製代碼
解析:ui
let arr = [ [1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14] ] ] ], 10]
// 1. 數組扁平化處理
let arr1 = arr.flat(Infinity)
console.log(arr1); // [1, 2, 2, 3, 4, 5, 5, 6, 7, 8, 9, 11, 12, 12, 13, 14, 10]
// 2. 數組去重
let arr2 = [...new Set(arr1)]
console.log(arr2); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 10]
// 3.數組排序
let arr3 = arr2.sort((a, b) => {
return a - b
})
console.log(arr3); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
複製代碼