2 回答

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超10個(gè)贊
按到 的距離排序number,其中距離是兩個(gè)數(shù)字之間的絕對(duì)差:
let arr = [1,16,14,13,6,7,4,5,3,2,19,20,10,4,6]
let number = 10
const distance = (a, t) => Math.abs(t - a);
arr.sort((a, b) => distance(a, number) - distance(b, number));
console.log(arr);

TA貢獻(xiàn)1873條經(jīng)驗(yàn) 獲得超9個(gè)贊
只需.sort()使用Math.abs.
let arr = [1, 16, 14, 13, 6, 7, 4, 5, 3, 2, 19, 20, 10, 4, 6]
let number = 10
let sortByShortestDistance = (arr, number) => arr.sort((a, b) => Math.abs(a - number) - Math.abs(b - number))
console.log(sortByShortestDistance(arr, number))
添加回答
舉報(bào)