gpt4 book ai didi

javascript - 如何根据另一个对象对数组对象进行排序

转载 作者:行者123 更新时间:2023-12-01 16:25:40 25 4
gpt4 key购买 nike

可以像这样对数组进行排序和重新排列:

items:[{
id: '5',
name: 'wa'
},{
id: '3',
name: 'ads'
},{
id: '1',
name: 'fdf'
}]

为了匹配这个对象的排列:

 Item_sequence: {
"5": {index: 1},
"1": { index: 0 }
}

这是我正在寻找的输出:

 items:[{
id: '1',
name: 'fdf'
},{
id: '5',
name: 'wa'
},{
id: '3',
name: 'ads'
}]

最佳答案

您可以检查是否提供了索引,如果没有,则取一个 lage 值按两个项目的增量进行排序。

var data = { items: [{ id: '5', name: 'wa' }, { id: '3', name: 'ads' }, { id: '1', name: 'fdf' }] },
sequence = { 5: { index: 1 }, 1: { index: 0 } };

data.items.sort(({ id: a }, { id: b }) =>
(a in sequence ? sequence[a].index : Number.MAX_VALUE) -
(b in sequence ? sequence[b].index : Number.MAX_VALUE)
);

console.log(data.items);
.as-console-wrapper { max-height: 100% !important; top: 0; }

关于javascript - 如何根据另一个对象对数组对象进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62131704/

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