根据可能为null的属性对数组排序

编程入门 行业动态 更新时间:2024-10-28 10:27:55
本文介绍了根据可能为null的属性对数组排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个对象数组:

let items = [ { name: 'eric', value: 1 }, { name: 'bob', value: 4 }, { name: 'michael', value: 0 }, { name: 'john', value: 3 }, { name: 'brad', value: null }, { name: 'martin', value: 2 }, { name: 'chris', value: null } ];

我想对数组进行排序,以便可以通过值"属性对对象进行排序,如果它为null,则将对象放在数组的底部:

{ name: 'michael', value: 0 }, { name: 'eric', value: 1 }, { name: 'martin', value: 2 }, { name: 'john', value: 3 }, { name: 'bob', value: 4 }, { name: 'brad', value: null }, { name: 'chris', value: null }

->

我已经尝试过了

items.sort((a, b) => { return (a.orde ===null)-(b.ordre===null) || +(a.ordre>b.ordre)||-(a.ordre<b); });

但是似乎不起作用

建议?

解决方案

您可以先检查null,然后按值排序.

let items = [{ name: 'eric', value: 1 }, { name: 'bob', value: 4 }, { name: 'michael', value: 0 }, { name: 'john', value: 3 }, { name: 'brad', value: null }, { name: 'martin', value: 2 }, { name: 'chris', value: null }]; items.sort(({ value: a }, { value: b }) => (a === null) - (b === null) || a - b); console.log(items);

.as-console-wrapper { max-height: 100% !important; top: 0; }

I ve an array of objects :

let items = [ { name: 'eric', value: 1 }, { name: 'bob', value: 4 }, { name: 'michael', value: 0 }, { name: 'john', value: 3 }, { name: 'brad', value: null }, { name: 'martin', value: 2 }, { name: 'chris', value: null } ];

i want to sort my array so that the objects can be sorted by the "value" attribute , and if it's null , make the object in the bottom of the array :

{ name: 'michael', value: 0 }, { name: 'eric', value: 1 }, { name: 'martin', value: 2 }, { name: 'john', value: 3 }, { name: 'bob', value: 4 }, { name: 'brad', value: null }, { name: 'chris', value: null }

->

i ve tried this ;

items.sort((a, b) => { return (a.orde ===null)-(b.ordre===null) || +(a.ordre>b.ordre)||-(a.ordre<b); });

But seems that it's not working

Suggestions ?

解决方案

You could check for null first and then sort by the value.

let items = [{ name: 'eric', value: 1 }, { name: 'bob', value: 4 }, { name: 'michael', value: 0 }, { name: 'john', value: 3 }, { name: 'brad', value: null }, { name: 'martin', value: 2 }, { name: 'chris', value: null }]; items.sort(({ value: a }, { value: b }) => (a === null) - (b === null) || a - b); console.log(items);

.as-console-wrapper { max-height: 100% !important; top: 0; }

更多推荐

根据可能为null的属性对数组排序

本文发布于:2023-10-22 22:10:14,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1518870.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数组   能为   属性   null

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!