@react_js

Страница 1273 из 5115
Aleh
12.05.2017
13:29:26
да ну, скопировать массив или же просто установить новое значение ключа?
процессор твой может выполнить за секунду примерно 10**9 операций, посчитай сколько тебе надо элементов, чтобы почувствовать разницу

Max
12.05.2017
13:29:33
если нужен порядок какой-то то это решается разными способоами в зависимости от контекста

Konstantin
12.05.2017
13:29:37
в том, что если удаляь, то останется пустое место — undefined
сплайси. у тебя ж индекс всегда может быть

Дмитрий
12.05.2017
13:29:40
ты не заметишь разницы даже на 5к элементах
Лол, особенно если у тебя по ним селекты будут как в sql каком-нибудь.

Google
Konstantin
12.05.2017
13:30:05
мутация
слайс без аргументов, а потом сплайс

Сергей
12.05.2017
13:30:06
сплайси. у тебя ж индекс всегда может быть
и все индексы нужно пересобирать заново)

Aleh
12.05.2017
13:30:23
Очень мало, поверь мне. Ты ж не на асм пишешь, ну
в редаксе для веб-приложения? До 10**5 я бы вообще не дергался, если бенч не показывает иного

Сергей
12.05.2017
13:30:29
это О(1)
лол а если я храню индексы?))) так же проще (нет)

Yung
12.05.2017
13:30:42
Ну камон, разница может и не заметна, но зачем лишний раз говнокодить?

Дмитрий
12.05.2017
13:30:45
Stepan
12.05.2017
13:30:47
Запилите кто-то бенч

Сергей
12.05.2017
13:31:00
Запилите кто-то бенч
бенчи ничего не показывают обычно

Google
Aleh
12.05.2017
13:31:07
Ну вот представь себе, что придётся дергаться
если придется, то я сделаю оптимизацию, очевидно

Дмитрий
12.05.2017
13:31:14
Веб апп телеграма — уже нефиговый бенч

Aleh
12.05.2017
13:31:20
но до момента, пока я не вижу, что оптимизация нужна, я ее не делаю

Сергей
12.05.2017
13:31:26
когда в приложении 5-10 редюсеров с несколькими большими массивами, вот тогда заметно будет пиздец как

Konstantin
12.05.2017
13:31:31
лол а если я храню индексы?))) так же проще (нет)
не всегда. итогда на много лучше просто массив. иногда по индексам. ты ж в курсе?! ну раз я уже привел пример с массивом объектов, то я от него и отталкиваюсь

Aleh
12.05.2017
13:31:37
Веб апп телеграма — уже нефиговый бенч
понятное дело, что если ты делаешь шифрование, то тебе надо думать про скорость

Дмитрий
12.05.2017
13:31:39
если придется, то я сделаю оптимизацию, очевидно
Ну вот я тебе рассказываю как человек, который уже сделал оптимизацию ,что разница есть

Камон

Дмитрий
12.05.2017
13:32:01
Что нет?

да

Aleh
12.05.2017
13:32:22
Ну вот я тебе рассказываю как человек, который уже сделал оптимизацию ,что разница есть
можешь описать мне кейс, когда ты заметил разницу перебора массива и объекта в клиенте веб-приложения?

Дмитрий
12.05.2017
13:32:35
Я выше с кем разговаривал?

Короче не вижу смысла спорить, столкнёшься — сам увидишь

Aleh
12.05.2017
13:33:38
Короче не вижу смысла спорить, столкнёшься — сам увидишь
ну я тип немного знаю про оптимизации, и поэтому и говорю, что тут она скорее всего не нужна, а если нужна, то изменение вообще не принципиальное

а кейс ты не описал

Google
Alex
12.05.2017
13:34:06
HELP PLEASE ::: Есть три таба, и в каждом список рендериться, нужно анимировать только вновь пришедшие итемы по редукс событию, как навешать классы на них, подсказывали react-transition-group но не совсем то. Подскажите пожалуйста идеи?

Aleh
12.05.2017
13:34:38
лол ты как-то выборочно читаешь
возможно, поток большой, мог пропустить, но я несколько раз пролистал и не нашел

Konstantin
12.05.2017
13:35:08
Я че-то потерял нить разговора. Мы там о структурах рассуждали и скорости удаления оттуда элемента.

Уже что-то другое?

Oleg ?
12.05.2017
13:35:23
@KD_88 function removeItemFromArray(array, action) { return [ ...array.slice(0, action.index), ...array.slice(action.index + 1) ]; } function removeItemFromObject(object, action) { return { ...object, [action.index]: undefined }; }

Возможно можно сделать лучше

Писал наспех

А теперь удали объект по ID

Max
12.05.2017
13:37:37
а у тебя выше что? )

Konstantin
12.05.2017
13:37:39
Oleg ?
12.05.2017
13:37:48
Ну например пост нужно удалить

Konstantin
12.05.2017
13:37:52
А теперь удали объект по ID
по индексу ты имеешь ввиду

Oleg ?
12.05.2017
13:38:04
Нет, по Id

Скорее всего будет вот что:

Dmitry ?
12.05.2017
13:38:30
Будет filter

Max
12.05.2017
13:38:31
return array.filter(o=>o.id!=id)

:)

Oleg ?
12.05.2017
13:38:37
array.filter(item => item.id !== action.id)

Max
12.05.2017
13:38:47
yup

о баг нашел

Google
Max
12.05.2017
13:39:14
нельзя сообщение редактировать после удаления

Oleg ?
12.05.2017
13:39:52
* ...array.filter(item => item.id !== action.id)

Это простой случай и тут ещё всё получается

А если нужно написать обновление поста

Или вставку

Сергей
12.05.2017
13:40:33
Oleg ?
12.05.2017
13:40:37
То это превращается в адище

Konstantin
12.05.2017
13:40:48
array.splice(array.indexOf(VALUE), 1)

Admin
ERROR: S client not available

Konstantin
12.05.2017
13:41:01
в чем проблема удалить?

Max
12.05.2017
13:41:02
Сергей
12.05.2017
13:41:11
array.splice(array.indexOf(VALUE), 1)
то есть сначала найди объект, потом сделай indexOf?

Oleg ?
12.05.2017
13:41:13
А обновление?

Сергей
12.05.2017
13:41:21
короче с массивами — бред

Max
12.05.2017
13:41:24
Oleg ?
12.05.2017
13:41:35
У тебя приложение начнёт в очень скором времени тормозить

Max
12.05.2017
13:41:38
а иммутабельность?

Konstantin
12.05.2017
13:41:43
эээ што
деструктивное удаление по индексу

Oleg ?
12.05.2017
13:41:46
Например чат, в котором будет 5000 сообщений у тебя загнётся

Google
Сергей
12.05.2017
13:41:54
а иммутабельность?
так .splice новый массив возвращает не?

а не

Dmitry ?
12.05.2017
13:42:01
Да кому нужна иммутабельность)

Oleg ?
12.05.2017
13:42:03
Да

Konstantin
12.05.2017
13:42:08
так .splice новый массив возвращает не?
возвращает удаленный элмнт

Oleg ?
12.05.2017
13:42:09
Нужно

Max
12.05.2017
13:42:27
> The splice() method changes the contents of an array by removing existing elements and/or adding new elements.

Сергей
12.05.2017
13:42:31
короче массивы в ридаксе это пздц

Oleg ?
12.05.2017
13:42:38
Согласен

Oleg ?
12.05.2017
13:42:48
Почитай ещё про Binnary Tree

Aleh
12.05.2017
13:42:56
да, сек

Max
12.05.2017
13:43:08
лол, так удаление в объекте медленнее, чем из массива :D
ты про сплайс или иммутабельное удаление?

Oleg ?
12.05.2017
13:43:13
Очень важная штука в программировании, особенно когда работаешь с большим количеством данных

Konstantin
12.05.2017
13:43:21
короче массивы в ридаксе это пздц
Мне норм. Я не понимаю проблемы. Вот серьёно. С бэка в 100500 случаев из базы придет массив объектов. Сходу с ним придется работать.

Aleh
12.05.2017
13:43:32
Max
12.05.2017
13:43:47
но один хер работать удобнее с обьектом кмк

Oleg ?
12.05.2017
13:43:54
Массив плохо - объект хорошо, потому что это Binary Tree

Страница 1273 из 5115