169 похожих чатов

Приходит массив в котором N количество visits, и внутри них

ещё вложенность тоже N количество items, и name может повторяться, и необходимо удалять дубликат по name и соединять их amount в один. Как бы это красиво реализовать ? Уже начал писать большую функцию, но боюсь что она вообще будет не читабельной и криво работать

https://pastebin.com/zas52dwj

22 ответов

18 просмотров

а на employee пофигу?

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤- Автор вопроса
i7 4n
а на employee пофигу?

К сожалению его фактор тоже важен, ибо это ФИО клиента и в дальнейшем тоже будет использоваться. Хотя если в этом случае будет пофиг, то там дальше по коду соединить. Как же достали эти дубликаты и вложенности😭

вы хотите по итогу плоский массив айтемов или ту же структуру сохранить я запутался с примером данных до / после было бы значительно проще

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤- Автор вопроса
i7 4n
вы хотите по итогу плоский массив айтемов или ту ж...

Спасибо что помогаете, По итогу массив практический не должен измениться, а должны удалится объкты с одинаковым name, останется лишь один с таким name, а их amount сложить

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤
Спасибо что помогаете, По итогу массив практическ...

так, мб, и employees тоже в массив пихнуть, раз они вам нужны будут или как?

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤- Автор вопроса
i7 4n
так, мб, и employees тоже в массив пихнуть, раз он...

можно по идее, сейчас главное убрать чертовы дубликаты name и сложить их amount

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤
можно по идее, сейчас главное убрать чертовы дубли...

можно в два прохода через reduce собрать в Map по ключу name, потом взять values люблю этот вариант

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤- Автор вопроса
i7 4n
можно в два прохода через reduce собрать в Map по ...

function getUniqueListBy(arr, key) { return [...new Map(arr.map(item => [item[key], item])).values()] } Типа так ?

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤
function getUniqueListBy(arr, key) { return [....

но прям так не надо, потому что ещё раз ходить придётся

мне стало скучно visits.map(({ items, ...rest }) => { const groupedItems = items.reduce((acc, item) => { if (acc.has(item.name)) { acc.get(item.name).amount += item.amount; } esle { acc.set(item.name, { ...item }); } return acc; }, new Map()); return Object.assign(rest, { items: Array.from(groupedItems.values()) }); });

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤- Автор вопроса
i7 4n
мне стало скучно visits.map(({ items, ...rest }) ...

Вам тоже большое спасбио💜

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤
Вам тоже большое спасбио💜

ток не факт, что оно работает, я ничё не проверял, как обычно

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤
Вам тоже большое спасбио💜

и складывание employee в массив, кстати, одна строчка добавляется

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤- Автор вопроса
i7 4n
ток не факт, что оно работает, я ничё не проверял,...

Да, оно не работает) Вот сейчас сижу разбираюсь

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤
Да, оно не работает) Вот сейчас сижу разбираюсь

если кинете массивчик ваш, то подправлю ток не сообщением, а на пестбин куда-нить

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤- Автор вопроса
𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤- Автор вопроса
𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤
https://pastebin.com/WeJg3LyZ

В итоге как я понимаю должно получиться: https://pastebin.com/9JijEntY

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤
Окей, если возникнут проблемы скину

у меня там esle, а не else хд вообще говоря, я думал, вы хотите в этот item всё запихать, а у вас всё в одном visit я, крч, запутался насчёт того, что вы хотите

𝔻𝕚ℤ𝕚ℕ𝕟𝔼𝕤- Автор вопроса
i7 4n
у меня там esle, а не else хд вообще говоря, я дум...

Ага, там esle тоже угарнул) Сам запутался, щя подумаю

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта