排序排序并增加计数器

亚历山大·佐西姆丘克(Alexandr Zosimchuk)

我从数据库得到了一个响应,我如何可以按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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章