我从数据库得到了一个响应,我如何可以按ID排序,而“计数”将按ID递增,我只需要在续集中使用,或者如果您知道使用JS进行此操作的快捷方式,欢迎您:[ { "count": 12, "Dish": { "id": 2, "name": "Дессерт 4" } }, { "count": 2, "Dish": { "id": 1, "name": "Дессерт 4" } }, { "count": 3, "Dish": { "id": 2, "name": "Дессерт 4" } }, { "count": 10, "Dish": { "id": 1, "name": "Дессерт 4" } } ]
这是答案
'use strict';
const list = [
{
count: 12,
Dish: {
id: 2,
name: 'Дессерт 4'
}
},
{
count: 2,
Dish: {
id: 1,
name: 'Дессерт 4'
}
},
{
count: 3,
Dish: {
id: 2,
name: 'Дессерт 4'
}
},
{
count: 10,
Dish: {
id: 1,
name: 'Дессерт 4'
}
}
];
console.log('Unsorted ', list);
const set = new Set();
list.sort((ele1, ele2) => {
if (!set.has(ele1)) {
ele1.count += ele1.Dish.id;
set.add(ele1);
}
if (!set.has(ele2)) {
ele2.count += ele2.Dish.id;
set.add(ele2);
}
return ele1.Dish.id - ele2.Dish.id;
});
console.log('Sorted ', list);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句