Как мне удалить повторяющиеся объекты с условием?
предположим, что у меня есть этот массив:
let my_array = [
{ name: "foo", version: "10" },
{ name: "foo", version: "60" },
{ name: "foo", version: "20" },
{ name: "bar", version: "400" },
];
Мне нужно уберечь объект с последней версией от дубликатов.
Я знаю, что могу использовать Set для удаления дубликатов:
let unique = my_array.filter((set => f =>
!set.has(f.name) && set.add(f.name)
)
(new Set)
)
ожидаемый результат с условием максимальной версии:
let my_array = [
{ name: "foo", version: "60" },
{ name: "bar", version: "400" },
];