TrueJS 19. Метод reduce и reduceRight

  Рет қаралды 16,333

WebDev с нуля. Канал Алекса Лущенко

WebDev с нуля. Канал Алекса Лущенко

Күн бұрын

Пікірлер: 37
@mikhaildevichensky6407
@mikhaildevichensky6407 5 жыл бұрын
Спасибо огромное за ваши уроки , очень все понятно и доступно лучше я не видел на youtube !
@s.n.5930
@s.n.5930 5 жыл бұрын
не сумбурное, а лучшее пояснение функции редьюс что я видел. спасибо
@СветланаОщепкова-ц6ю
@СветланаОщепкова-ц6ю 5 жыл бұрын
Спасибо большое за уроки! лучшее объяснение метода, которое встречала (как и в других уроках тоже). все сразу стало понятно))
@g999ar
@g999ar Жыл бұрын
В параметр previousValue, при каждом следующем шаге перебора, записывается результат функции (с помощью return)
@julialisitcyna4589
@julialisitcyna4589 6 жыл бұрын
Спасибо вам большое за ваш труд.
@itgid
@itgid 6 жыл бұрын
Спасибо за комментарий!
@69hp_pubg
@69hp_pubg 5 жыл бұрын
Вы забыли рассказать про второй аргумент .reduce() Второй аргумент указывает с какого айтеми начать. Например есть массив let a = [1, 2, 3] если указать вот так let b = a.reduce(function(){}, 1) то оно начинает работать с второго айтема
@fanurkhusainov6542
@fanurkhusainov6542 10 ай бұрын
Это не второй айтем, а начальное значение, то есть вместо prevValue будет использоваться
@АлександрШатохин-н7г
@АлександрШатохин-н7г 6 жыл бұрын
Теоретически метод понятен, но вот не очень могу понять где он применяется на практике. Не могли бы привести пример из своей обширной практики где именно он использовался?
@itgid
@itgid 6 жыл бұрын
Вот честно говоря ипользуе циклы для переборов и операций. Они больше по коду, но читаются значительно легче.
@yakut54
@yakut54 5 жыл бұрын
а про метод find(); расскажите чего нибудь
@ilyadruzh
@ilyadruzh 5 жыл бұрын
Правильнее сказать, что переменная prevValue инициализировано первым значением массива, но это не является первым значением массива. При обходе массива в reduce prevValue это обособленное значение, которое при запуске получило значение первого элемента массива.
@violmy
@violmy 6 жыл бұрын
друже, часто цей редюс на практиці використовується? дуже дякую ще раз і ще раз за ваше старання)
@itgid
@itgid 6 жыл бұрын
Як вам відповісти так, щоб не збрехати. Це залежить від автора коду. Якщо автору подобається цей метод, то використовується майже на рівні з циклом for. Якщо не подобаэться - майже ні. Але профі повинні працювати з цим методом.
@andriiproniuk6186
@andriiproniuk6186 3 жыл бұрын
Чітко, точно, коротко )
@Anna-xm7gs
@Anna-xm7gs 5 жыл бұрын
Спасибо за сложное простым языком!
@petroboiko3019
@petroboiko3019 4 жыл бұрын
Быстро и Доступно, можно еще добавить: In addition to the callback function, reduce() also has an optional parameter: initialvalue. In the example above, the initialvalue is omitted. Then the initialvalue is the first element, and then start the cumulative operation from second element. The following example uses the initialvalue: var arr=[1,2,3,4,5]; console.log(arr.reduce((a,b)=>a+b,"")); //output: 12345 This example uses an empty string as the initialvalue, followed by these operation: ""+1-->"1","1"+2-->"12",......,"1234"+5-->"12345"
@yarik83men51
@yarik83men51 5 жыл бұрын
Дякую... Фэнкью... Спасибо...
@watchbotzz
@watchbotzz 6 жыл бұрын
Отлично, все методы разобрали ! лакй
@romanr6697
@romanr6697 6 жыл бұрын
Добрый день. Помогите пожалуйста разобраться! Задача: Дан массив с числами. Найдите сумму первых N элементов до первого нуля. Пример: [1, 2, 3, 0, 4, 5, 6] - суммируем первые 3 элемента, так как дальше стоит элемент с числом 0 Решение: let arr = [1, 2, 3, 0, 4, 5, 6]; let answer = 0; let result = arr.reduce(function(sum,el){ if(el == 0) { answer = sum; } else { return sum + el} }) if(answer == undefined){answer = result}; // Зачем проверка на Undefined???????? console.log(result) // почему результат редуцирования равен NaN ????? console.log(answer)
@romanr6697
@romanr6697 6 жыл бұрын
И как можно это написать понятнее??
@itgid
@itgid 6 жыл бұрын
Зачем reduce? Обычный цикл с выходом. И не нужно undefined здесь, она лишняя. У вас, даже если он не сработает - будет равен 0. По reduce вы его не корректно применяете. Если хотите посмотрите спор у нас на канале телеграм (Ссылка под видео) там тоже был аналогичный вопрос по NaN. И нашли ответ.
@romanr6697
@romanr6697 6 жыл бұрын
спасибо!
@ВикторТуманов-р9з
@ВикторТуманов-р9з 4 жыл бұрын
очень здорово спасибо!
@NickToTrick
@NickToTrick 5 жыл бұрын
Спасибо, помог разобраться
@gurudk3378
@gurudk3378 6 жыл бұрын
Дякую за вашу працю!!! Дуже хотілося би побачити відеоролики по технології flexbox.
@itgid
@itgid 6 жыл бұрын
Будь ласка. Флексбокс це html+css. Дуже багато гарних відеороликів в Інтернет
@span4ev
@span4ev 6 жыл бұрын
Guru Dk Посмотрите уроки по flexbox на канале CodeDojo. Он хорошо объясняет флекбокс. Вопрос к автору канала : ничего, что я ссылаюсь на другой канал?
@overparser
@overparser 4 жыл бұрын
Спасибо
@evgeniizaets9243
@evgeniizaets9243 5 жыл бұрын
Разобрал принцип работы, но не обьяснил зачем это нужно и почему это удобнее и понятнее чем циклы. Надо бы показать реальный кейс использования.
@Vip-kw9id
@Vip-kw9id 6 жыл бұрын
Спасибо,разобрался. Но вопрос один все таки остался : "Что за одно чепушило поставило дизлайк!?"
@itgid
@itgid 6 жыл бұрын
Обидно когда ставят просто, а когда пишут обоснованный негативный комментарий - это очень полезно и классно.
@romanm109
@romanm109 5 жыл бұрын
объяснение внятное и понятное, но боже мой, друг, купи словарик анлийского языка, это же невозможно слушать. Давай я по доброму здесь оставлю то что заметил, а ты постарайся пожалуйста поработать на собой (и всем будет полезно я думаю). Итак: console - читается "консоль", е не произносится. Сurrent - "каррент", через "а", а не "кюррент" или "кёррент". Кроме того, сумбура добавляет то, что не указано , индекс ЧЕГО выводится. Логично предположить что выводится индекс начиная с 1-го элемента. А фиг там. В примере индекс начинается с 1, а при reduceRight - с 2ки! Что значит только 1 - индекс current элемента отображается, т.е. всегда начиная со 2-го элемента, не важно откуда начинать обработку (слева направо или справа налево)
@КостянЕрмаков-е9ю
@КостянЕрмаков-е9ю 6 жыл бұрын
чуть не забыл на лукас жбяхнуть))
@itgid
@itgid 6 жыл бұрын
Что такое лукас и зачем вы его жбякнули? :)
@КостянЕрмаков-е9ю
@КостянЕрмаков-е9ю 6 жыл бұрын
JavaScript решает, да это такое, ну это самое... короче, без бутылки не разобраться.
@yarik83men51
@yarik83men51 4 жыл бұрын
+++
TrueJS 20. Функции в Javascript, аргументы
23:17
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 23 М.
TrueJS 18. Методы массива every и some
7:02
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 11 М.
Мясо вегана? 🧐 @Whatthefshow
01:01
История одного вокалиста
Рет қаралды 7 МЛН
Что-что Мурсдей говорит? 💭 #симбочка #симба #мурсдей
00:19
Замыкания в JavaScript
18:50
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 53 М.
TrueJS 17. Что быстрее For или метод Map
3:56
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 7 М.
Просто о promise в JavaScript
12:52
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 136 М.
True JS 21. Области видимости внутри функции, hoisting
12:53
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 17 М.
TrueJS 14. Метод map для массивов
13:12
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 39 М.
True JS 25. Псевдомассив Arguments
14:54
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 17 М.
True JS 26. Объекты как ассоциативные массивы
19:56
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 16 М.
True JS 24. Callback функции
11:01
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 70 М.
Мясо вегана? 🧐 @Whatthefshow
01:01
История одного вокалиста
Рет қаралды 7 МЛН