js合并多个有序数组排序去重

43次阅读

共计 632 个字符,预计需要花费 2 分钟才能阅读完成。

将数组 [[12,2],[23,5],[55,67],[12,23]],转换为 [2,5,12,23,55,67];

var arr = [[12,2],[23,5],[55,67],[12,23]]

// 只合并
function concat1(arr) {return arr.reduce( function (x,y) {return x.concat(y)
    })
}
console.log(concat1(arr),'只合并')


// 如果需要从小到大排序
function concat2(arr) {return arr.reduce( function (x,y) {return x.concat(y)
    }).sort(function (a,b) {return a-b})
}
console.log(concat2(arr),'合并并排序')

// 箭头函数 合并从小到大排序
arr.reduce((a,b) => a.concat(b)).sort((a,b) => a-b)
console.log(arr.reduce((a,b) => a.concat(b)).sort((a,b) => a-b),'es6 综合')

// 合并排序并去重
[...new Set(arr.reduce((a,b) => a.concat(b)).sort((a,b) => a-b))]
console.log([...new Set(arr.reduce((a,b) => a.concat(b)).sort((a,b) => a-b))],'将将最精简的版本')

正文完
 0