У меня есть массив в следующем формате, в котором каждый уникальный «Поставщик» уже упорядочен (с использованием запроса sql) переменной «Total_Weight» в порядке убывания. [{Поставщик: 'AAA', ...
0
user3447653
5 Апр 2021 в 22:06
1 ответ
Лучший ответ
Вы можете просто использовать reduce
здесь, чтобы получить список только с первым элементом для каждого поставщика:
const data = [{ Vendor: 'AAA', id: 'FOR', Total_Weight: 61156 },
{ Vendor: 'AAA', id: 'LOC', Total_Weight: 32322 },
{ Vendor: 'BBB', id: 'LOC1', Total_Weight: 3145 },
{ Vendor: 'BBB', id: 'LOC2', Total_Weight: 11 }];
const result = data.reduce((allEntries, currentEntry) => allEntries.some(entry => entry.Vendor === currentEntry.Vendor) // if there already is an entry for the given vendor...
? allEntries // don't add the current entry to the list
: [...allEntries, currentEntry], // otherwise, as the current entry is the first one for the given vendor, add it
[] // starting value of "allEntries"
);
console.log(result);
2
fjc
5 Апр 2021 в 19:20
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.