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

Ребята привет! Есть масив объектов post = [{title:

"Hi", id:1}, {title: "foo", id:2] и объект newPost = {title: "good", id: 3}. Надо написать максимально короткое решение. Что если в масиве post нету такого id как в newPost. То в post запушить newPost. Кто поможет??

46 ответов

10 просмотров

так это в худшем случае 2 строки хд

posts.find(({ id }) => id === newPost.id) ?? posts.push(newPost);

i7 4n
posts.find(({ id }) => id === newPost.id) ?? posts...

Только лучше через some и через &&

это nullish coercial или как там его. Короче проверяет то что !== null + !== undefined

Так красивее будет posts.some(({ id }) => id === newPost.id) || posts.push(newPost);

Alexandr
Только лучше через some и через &&

ну да, согласен, вечно забываю про some

i7 4n
ну да, согласен, вечно забываю про some

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

Alexandr
Я просто для себя запомнил, что существует include...

я бы всё равно в три строки написал хд

Alexandr
+

const postIsAlreadyIncluded = posts.some(({ id }) => id === newPost.id); if (!postIsAlreadyIncluded) { posts.push(newPost); } я б так сделал

i7 4n
const postIsAlreadyIncluded = posts.some(({ id }) ...

Я бы вот так ) const isNotExist = posts.every(({ id }) => id !== newPost.id); if (isNotExist) { posts.push(newPost); }

Alexandr
Я бы вот так ) const isNotExist = posts.every(({ ...

лучше not вынести из названия переменной

Alexandr
Я бы вот так ) const isNotExist = posts.every(({ ...

ну я бы в конце тогда отрицание сделал перед some, чем в предикате

Anton Permyakov
лучше not вынести из названия переменной

Мне наоборот больше нравится, когда нет отрицаний в if

так, не надо тут на однострочники борогозить

Alexandr
Мне наоборот больше нравится, когда нет отрицаний ...

мне тоже нравится, но лучше там, чем в переменных

Bogdan- Автор вопроса
Alexandr
Так красивее будет posts.some(({ id }) => id === n...

а как немного переделать? Что если такой айди уже есть то мы пушим уже с новым айди который например увеличиваем на 1??

Bogdan
а как немного переделать? Что если такой айди уже ...

id-то какой брать? максимальный в массиве или тот, что в newPost или что ащ

Alexandr
Почему?

потому что это обязательно приведет к таким условиям if (!isNotExist)

Bogdan- Автор вопроса
i7 4n
id-то какой брать? максимальный в массиве или тот,...

У меня есть обьект масиво постов, при добавлении новго поста должна быть проверка на айди если такой есть то мы увеличеваем на 1 айди нового поста

Alexandr
const isExist = !isNotExist;

и зачем эти 2 лишних шага?

Anton Permyakov
и зачем эти 2 лишних шага?

Затем что нужна и та и та переменная в твоем случае

i7 4n
ну нееее

Ну хз, потом и ту и ту переменную можно использовать и очень семантичненько получается

Alexandr
Ну хз, потом и ту и ту переменную можно использова...

тогда я бы сначала получил isExist, а потом уже const isNotExist = !isExist;

Bogdan
У меня есть обьект масиво постов, при добавлении н...

муть какая-то posts.some(({ id }) => id === newPost.id) || posts.push({ ...newPost, id: newPost.id + 1 });

Bogdan
хера се

да это муть, не делайте так, а то я потом за вами приду

Bogdan
а как тогда?)

если они у вас упорядочены, то берите id последнего или храните id. не пишите в одну строчку, когда там явно несколько действий и т.п.

Bogdan- Автор вопроса
i7 4n
если они у вас упорядочены, то берите id последне...

у меня задача сделать фейковий новий пост через апи, с апи все что ты получаешь это одинаковый айди сколько запросов ти не делал всегда айди один и тот же мне надо как то решить эту хрень

Bogdan- Автор вопроса

может оно и лучше

дыа, мужыцкий код, а эти ванлайнеры для мальчиков

Bogdan
может оно и лучше

не может, а есть

Bogdan
у меня задача сделать фейковий новий пост через ап...

короче вы там шо-то сложное мутите. в апи вы вообще должны просто кидать пост, а он вам возвращать с id

всё ситуативно, как всегда, да

Bogdan- Автор вопроса
i7 4n
муть какая-то posts.some(({ id }) => id === newPo...

Хотя это работает как нужно)

Bogdan- Автор вопроса
i7 4n
муть какая-то posts.some(({ id }) => id === newPo...

Ты говоришь что это говно, как его переписать что бы вырвиглазно не было то?)))

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта