gpt4 book ai didi

javascript - 对数字数组进行排序,使空值排在最后

转载 作者:搜寻专家 更新时间:2023-11-01 04:29:24 26 4
gpt4 key购买 nike

我有一个这样的数组:

var arr = [5, 25, null, 1, null, 30]

使用这段代码将数组从低到高排序,输出显示如下:

null null 1 5 25 30

arr.sort(function (a, b) {
return a - b;
};

但是,我希望最后显示空值,如下所示:

1 5 25 30 null null

我看过Sort an array so that null values always come last并尝试了这段代码,但输出仍然与第一个相同——空值在前:

arr.sort(function (a, b) {
return (a===null)-(b===null) || +(a>b)||-(a<b);
};

最佳答案

您可以先按 not null 排序,然后按数字排序。

var arr = [5, 25, null, 1, null, 30]

arr.sort(function(a, b) {
return (b != null) - (a != null) || a - b;
})

console.log(arr)

关于javascript - 对数字数组进行排序,使空值排在最后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43819867/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com