我如何才能按升序对数字数组进行排序,但0除外(最后需要去)。例

[1,4,6,3,0,3,0,1] => [1,1,3,3,4,6,0,0]


我试过arr.sort((a,b)=>a>b && a!=0)但不起作用

最佳答案

尝试按a === 0b === 0之间的差异排序(将布尔值强制转换为数字),或者如果没有差异,则按a - b排序:



const arr = [1,4,6,3,0,3,0,1]
arr.sort((a,b) => ((a === 0) - (b === 0)) || a - b)
console.log(arr);

关于javascript - 除特定编号外,其他编号按升序排列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51777807/

10-11 02:14
查看更多