小编Vas*_*gar的帖子

使用两种排序条件对javascript中的对象数组进行排序

我的对象数组如下。

let obj=[
{
  id:1,
  pinnedBy:"abc",
  value:9
},
{
  id:2,
  pinnedBy:null,
  value:10
},
{
  id:3,
  pinnedBy:"abc",
  value:11
},
{
  id:4,
  pinnedBy:null,
  value:12
},
];
Run Code Online (Sandbox Code Playgroud)

我的排序条件是

  1. pinnedBy 值为 NOT null 的项目应位于顶部,并应按值按降序排序。
  2. 所有其他项目应低于 pinnedBy 项目,并应按值降序排序。

应用排序后的结果将是

obj=[
{
  id:3,
  pinnedBy:"abc",
  value:11
},
{
  id:1,
  pinnedBy:"abc",
  value:9
},
{
  id:4,
  pinnedBy:null,
  value:12
},
{
  id:2,
  pinnedBy:null,
  value:10
}
];
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

javascript arrays sorting object

4
推荐指数
1
解决办法
66
查看次数

标签 统计

arrays ×1

javascript ×1

object ×1

sorting ×1