Array Methods: map, reduce, filter, forEach | JavaScript Array Methods

  Рет қаралды 55,001

Front-end Science with Sergey Puzankov

Front-end Science with Sergey Puzankov

Күн бұрын

Пікірлер: 125
@frontendscience
@frontendscience 3 жыл бұрын
⚠️ Не забывайте подписываться на наш Канал, у нас здесь каждую неделю свежие полезные видео по фронтенду - kzbin.info/door/mI5YBB9KJ0xLtFtgBX8rfw ❗️😉
@digital_nomad_spain
@digital_nomad_spain 3 жыл бұрын
тот случай, когда оплаченные курсы преподносят материал в такой сложной форме, что бежишь на ютуб, а здесь бесплатно такие прекрасные видосики - короткие, но емкие и понятные. спасибо большое!
@frontendscience
@frontendscience 3 жыл бұрын
Рад, что было полезно! :) Заходите почаще)
@МатвейБеликов-ц2б
@МатвейБеликов-ц2б 2 жыл бұрын
А на каком ресурсе курсы проходишь?
@digital_nomad_spain
@digital_nomad_spain 2 жыл бұрын
@@МатвейБеликов-ц2б в комментарии имела в виду нетологию, которые мне не понравились. хорошо зашли курсы Ивана Петриченко на юдеми и IT-Camasutra Димыча здесь на ютубе
@МатвейБеликов-ц2б
@МатвейБеликов-ц2б 2 жыл бұрын
@@digital_nomad_spain я их как раз и прохожу ;)
@fanfar9778
@fanfar9778 2 жыл бұрын
Дякую за коротке та інформативне відео
@АлександрМайстр
@АлександрМайстр Жыл бұрын
Серій дякую. Вас завжди приємно слухати. Гарна подача матеріалу як завжди!
@timsanbakr6517
@timsanbakr6517 2 жыл бұрын
Такая подача , все понятно сразу. Всех благ вам.
@Achieve_Zenith
@Achieve_Zenith Жыл бұрын
Шикарная подача, коротко и ясно. Обожаю ваш контент
@redconfizbl1281
@redconfizbl1281 Жыл бұрын
после прочтения главы в книге долго путалося, спасибо за подробное объяснение. стало все понятно)
@serhiilytvyn8753
@serhiilytvyn8753 3 жыл бұрын
Было бы интересно посмотреть Вашу реализацию методов. Спасибо за полезные видео!
@frontendscience
@frontendscience 3 жыл бұрын
Приятного просмотра! :) kzbin.info/www/bejne/fnKbl2dveM-epdE
@nataliavardazaryan3981
@nataliavardazaryan3981 3 жыл бұрын
Я в восторге от контента :) на канале есть все нужное новичку
@frontendscience
@frontendscience 3 жыл бұрын
Рады слышать! Если будут пожелания - пишите в комментариях, мы откликаемся на просьбы наших подписчиков :)
@kaspersky__13
@kaspersky__13 Жыл бұрын
Побольше бы таких видео! Очень хорошо объяснили! Но хотелось бы узнать, где в пишете код?
@yurakirichenko9770
@yurakirichenko9770 3 жыл бұрын
5 из 5. Несколько раз перечитал в книге эти методы, но здесь кратко, доступно и понятно человек объяснил. Спасибо большое!!!
@frontendscience
@frontendscience 3 жыл бұрын
Благодарю! Рад что было полезно!
@borisgrejcha7263
@borisgrejcha7263 3 жыл бұрын
как книга называется если не секрет?
@ЖанибекСундетов-о9д
@ЖанибекСундетов-о9д 2 жыл бұрын
Пока самый лучший канал по фронту который я видел! Почему я раньше вас не нашел)
@ruslangilyazov7733
@ruslangilyazov7733 Жыл бұрын
Cпасибо за видео! Хотелось бы видео про реализацию этих методов!!
@____Olga__
@____Olga__ 3 жыл бұрын
Cвоя реализация методов , спрашиваете ещё, конечно интересно. Ждём с нетерпением , когда покажете)
@frontendscience
@frontendscience 3 жыл бұрын
Обязательно сделаем. Может даже разберем на ближайшем субботнем. live-stream.
@ДеткиеНочники
@ДеткиеНочники 3 жыл бұрын
Спасибо за видос! Насчет самостоятельного написания методов, было бы полезно посмотреть как это реализовать самостоятельно
@frontendscience
@frontendscience 3 жыл бұрын
Благодарим за поддержку! Сделаем!
@TheProfessionalGambler
@TheProfessionalGambler 3 жыл бұрын
кастомная функция фильтр: const filter = (arr, callback) => { const result = [] for (let i = 0; i < arr.length; i++) { if (callback(arr[i], i, arr)) { result.push(arr[i]) } } return result } кастомный метод прототипа: Array.prototype.customFilter = function (callback) { const result = [] for (let i = 0; i typeof item === 'number' const newArray = filter(arr, isNumber) const customArray = arr.customFilter(isNumber) const evenArray = arr.customFilter((_, index) => index % 2 === 0) console.log({newArray, customArray, evenArray}) Здесь без контекста и проверок аргументов, думаю Серега покажет лучше. Это на коленке набросал)
@petarthecodehunter3333
@petarthecodehunter3333 2 жыл бұрын
Спасибо! Лучшее объяснение от методу reduce()
@ОльгаЗолотарёва-г6з
@ОльгаЗолотарёва-г6з Жыл бұрын
Спасибо большое за такое простое объяснение!!!! 🙂
@vahe.hayrapetyan
@vahe.hayrapetyan 2 жыл бұрын
Очень хорошо объяснил! Спасибо за видеокурс)
@andreyshek1490
@andreyshek1490 2 жыл бұрын
Классно объясняет! Подписка оформлена🙏👍
@w3k5ik
@w3k5ik 3 жыл бұрын
8:30 По умолчанию в данном кейсе не нулю равен аккумулятор, а первом значению в итеррируемом массиве.
@frontendscience
@frontendscience 3 жыл бұрын
Да все верно! В этом видео для упрощения, не стал разбирать этот edge кейс. На следующем же стриме, где мы с нуля писали все эти методы (свои реализации) уже подробно рассказал про кейс - без дефолтного значения.
@borisgrejcha7263
@borisgrejcha7263 3 жыл бұрын
если меня попросят сказать что-то на умном, я буду готов))
@vladimirpuzey713
@vladimirpuzey713 3 жыл бұрын
Отличное видео! Но хотелось бы больше интересных, не типичных примеров использования методов массивов! Спасибо за контент!
@frontendscience
@frontendscience 3 жыл бұрын
Рад ,что понравилось! Разберем в следующих видео.
@kaspersky__13
@kaspersky__13 Жыл бұрын
​@@frontendscience можете сказать, название вашего редактор кода?
@romanprokopets3693
@romanprokopets3693 3 жыл бұрын
спасибо, освежил в памяти) хотелось бы больше подобных видео
@frontendscience
@frontendscience 3 жыл бұрын
Благодарю за поддержку. Будет)
@Stas-ir3gh
@Stas-ir3gh Жыл бұрын
Спасибо, качественно объяснил
@polka-a
@polka-a Жыл бұрын
Спасибо, наконец то поняла 💕
@awenn2015
@awenn2015 2 жыл бұрын
Все кроме reduce уже давно использую, теперь буду пробовать редьюс, у него большой потенциал
@olexandrkozirskiy6917
@olexandrkozirskiy6917 Жыл бұрын
23,04,2023 😎
@mila4308
@mila4308 3 жыл бұрын
замечательный канал, отличное видео, спасибо!
@frontendscience
@frontendscience 3 жыл бұрын
Спасибо большое! Рады стараться
@akylbekbaizakov
@akylbekbaizakov 10 ай бұрын
Спасибо за видео!
@serverizedinov7942
@serverizedinov7942 3 жыл бұрын
Спасибо! Полезное видео.
@____Olga__
@____Olga__ 3 жыл бұрын
заждались реализации методов по своему, хотя три года ещё не прошло , конечно, продолжаем ожидать ;)
@leoclu8939
@leoclu8939 2 жыл бұрын
спасибо за работу
@РУСЛАНОРАСБАЕВ-т1и
@РУСЛАНОРАСБАЕВ-т1и Жыл бұрын
Просто и максимально быстро)
@ИльяПанин-и3л
@ИльяПанин-и3л 3 жыл бұрын
Полезно! Спасибо)
@frontendscience
@frontendscience 3 жыл бұрын
Благодарим! :)
@ArtiCHEs
@ArtiCHEs 3 жыл бұрын
Огромное, человеческое спасибо!
@frontendscience
@frontendscience 3 жыл бұрын
Рад, что понравилось!
@АнтонСтрока
@АнтонСтрока 3 жыл бұрын
Конечно интересно.
@chikichik4164
@chikichik4164 2 жыл бұрын
Спасибо, доступно очень объяснили!)
@chou_mlbb_ru
@chou_mlbb_ru Жыл бұрын
спасибо очен полезный видео
@maratiot
@maratiot 2 жыл бұрын
Видео крутое! снимайте видео чаще для новичков!
@lTanTea
@lTanTea 2 жыл бұрын
8:30 а разве по умолчанию аккумулятор не равен первому эллементу массива, если мы не указывали ноль в условии?
@frontendscience
@frontendscience 2 жыл бұрын
Да так и есть. Для простоты объяснения в этом видео я упростил эту часть. В следующем видео где мы делали свою реализацию методов я подробно остановился на дефолтном значении и варианте когда оно не задано
@multiply87
@multiply87 3 жыл бұрын
Кстати, неоднократно слушал о том, что невозможно прервать forEach и иже с ними, но можно. Просто выбросить ошибку(throw). Такой кейс был у меня, но очень давно. Возможно что-то изменилось. В любом случае спасибо, ибо нужно уметь не только кодить, но и уметь научить. Я как-раз занимаюсь подобным для новичков в пределах моей работы)
@frontendscience
@frontendscience 3 жыл бұрын
Это ситуация из разряда "почему все говорят, что нельзя микроскопом забивать гвозди? у меня вот получилось...". Так можно и выдернуть комп из розетки чтобы прервать forEach :) задача ведь не только прервать, а дальше продолжить выполнение. С эксепшеном все будет сложнее - чтобы не прерывать дальше код прийдется оборачивать все в try/catch. Короче говоря - гвозди и микроскоп! :) Если иметь целью писать хороший код - это не гуд практика. Ценю твою активность и целеустремленность! Нравится, что ты так глубоко стараешься во всем разобраться. И правильно, что уже учишь! Так все полируется и структурируется еще лучше.
@mtb-love-belarus
@mtb-love-belarus 3 жыл бұрын
Огонь, спасибо!
@frontendscience
@frontendscience 3 жыл бұрын
Рад, что было полезно
@Alex-scc
@Alex-scc 3 жыл бұрын
круто рассказываешь, было бы круто больше примеров из реала добавить, так-то сложно понять зачем нужно суммировать значения массива, хотя, раз отдельный метод для этого сделали видимо это частая задача, но вот мне не особо понятно в какой ситуации это могло бы пригодиться
@frontendscience
@frontendscience 3 жыл бұрын
Благодарю! Рад что понравилось! По поводу суммирования содержимого массива вариантов масса - например посчитать сумму заказа в корзине, или просуммировать и вывести итого в списке выплат сотрудникам. Вариантов - тьма :)
@ВоваШпилевой-в5ж
@ВоваШпилевой-в5ж 2 жыл бұрын
красава не плохо
@metterandroid
@metterandroid 2 жыл бұрын
Спасибо, было полезно)
@viktoriakrasiuk2000
@viktoriakrasiuk2000 3 жыл бұрын
Хотелось бы видео с более сложными примерамм использования метода reduce
@frontendscience
@frontendscience 3 жыл бұрын
Будет! Не забудьте нажать на колокольчик 🔔 😀
@АлисаСелезнева-в1о
@АлисаСелезнева-в1о 3 жыл бұрын
Поддерживаю!
@AndreiD-f7s
@AndreiD-f7s 3 жыл бұрын
Там если не ошибаюсь небольшая ошибка с reduce. Если не передавать второй аргумент, то acc будет сразу не 0, а первым элементом массива, т е 1, и итерация начнётся с второго элемента, т е еlem === 2
@frontendscience
@frontendscience 3 жыл бұрын
Это не ошибка, а сжатое изложение темы) В этом видео для простоты объяснения мы не разбирали эдж-кейсы (когда отсутствуют начальные значения). У нас на канале есть отдельное длинное видео, где мы делали свою реализацию всех этих методов уже с учетом эдж-кейсов и там уже подробно разбирали эту тему.
@РоманГирич-з5ш
@РоманГирич-з5ш 2 жыл бұрын
еще раз спасибо
@frontendscience
@frontendscience 2 жыл бұрын
Рад, что было полезно! )
@inokentiyMay
@inokentiyMay 3 жыл бұрын
Класно
@MrColins710
@MrColins710 3 жыл бұрын
top!
@ДенисДоровских-я2с
@ДенисДоровских-я2с 3 жыл бұрын
да было бы супер, если напишите реализацию данных методов!!
@frontendscience
@frontendscience 3 жыл бұрын
Уже есть :) Вот запись стрима: kzbin.info/www/bejne/fnKbl2dveM-epdE
@borysmarder2511
@borysmarder2511 3 жыл бұрын
Тут есть ошибка. Если не задано начальное значение аккумулятора в .reduce то в колбек на первой итерации попадут 0-й и 1-й элементы массива, т.е. функция будет вызвана на один раз меньше чем длина массива.
@frontendscience
@frontendscience 3 жыл бұрын
Там нет ошибки. Я объяснял базовый принцип работы алгоритма метода, без вдавания в подробности на эдж кейсах. Конечный результат работы метода будет именно тот, что нам нужен. Каждый из этих методов (в особенности reduce) имеет массу нюансов и заслуживает отдельного видео - в том числе и про внутреннюю реализацию. Что я и предлагал в видео.
@user-san-chous
@user-san-chous 3 жыл бұрын
человек, который отнимет часть ниши в Александра Лущенко))
@АлександрБолдырев-п7ц
@АлександрБолдырев-п7ц 3 жыл бұрын
Как то даже писал собственную реализацию. Но было бы интересно посмотреть как делают это другие.
@frontendscience
@frontendscience 3 жыл бұрын
Приятного просмотра: kzbin.info/www/bejne/fnKbl2dveM-epdE
@yv4194
@yv4194 3 жыл бұрын
@ Front-end Science with Sergey Puzankov а что за extension под vscode для распознания типа переменной? авто тайп скирт
@frontendscience
@frontendscience 3 жыл бұрын
Даже не знаю, что ответить. Я никаких дополнительных экстеншинов не ставил, это все шло из коробки
@Nevskij111
@Nevskij111 Жыл бұрын
как так смотреть результаты в редакторе подскажите?
@roxone314
@roxone314 3 жыл бұрын
вызываем нашу функцию редьюсе))
@umarjuraev1624
@umarjuraev1624 3 жыл бұрын
spasibo
@ОлександрКарась-в1и
@ОлександрКарась-в1и 3 жыл бұрын
Подскажите пожалуйста, как так получилось что расширения файла .js но Вы используете typescript (указываете типы для аргументов функции)?
@frontendscience
@frontendscience 3 жыл бұрын
Я не использовал там тайпскрипт, это новая фича от вебшторм - он анализирует код и сам показывает типы.
@ОлександрКарась-в1и
@ОлександрКарась-в1и 3 жыл бұрын
@@frontendscience Понял, спасибо за ответ.
@arturnevesomov8300
@arturnevesomov8300 3 жыл бұрын
Здравствуйте! Какой шрифт используете в редакторе кода?
@frontendscience
@frontendscience 3 жыл бұрын
Jetbrains Mono
@angular-developer-e1t
@angular-developer-e1t 3 жыл бұрын
Да интересно, только у array 31 метод.
@igormuryy5722
@igormuryy5722 3 жыл бұрын
Сделайте минипроект онлайн
@frontendscience
@frontendscience 3 жыл бұрын
В планах :) Stay tuned.
@Davidovich_aka_smoozydrinker
@Davidovich_aka_smoozydrinker 3 жыл бұрын
@@frontendscience только НЕ на 4 часа видео, пожалуйста, а как "ulbi tv" пилит, ускоряя верстку и рутину, вырезая паузы в видео при монтаже. Спасибо.
@mentalist_tema
@mentalist_tema 3 жыл бұрын
Очень хочу видео реализации методов
@frontendscience
@frontendscience 3 жыл бұрын
Приятного просмотра! :) kzbin.info/www/bejne/fnKbl2dveM-epdE
@Valery_150
@Valery_150 3 жыл бұрын
Да круто было бы
@frontendscience
@frontendscience 3 жыл бұрын
Приятного просмотра: kzbin.info/www/bejne/fnKbl2dveM-epdE
@Valery_150
@Valery_150 3 жыл бұрын
@@frontendscience спасибо)
@d_r_robot
@d_r_robot 3 жыл бұрын
Кстати да, как написать свою реализацию метода map, filter и прочее?
@frontendscience
@frontendscience 3 жыл бұрын
Уже прошел стрим. Приятного просмотра! kzbin.info/www/bejne/fnKbl2dveM-epdE
@d_r_robot
@d_r_robot 3 жыл бұрын
@@frontendscience да, посмотрел, благодарю. Максимально полезно, буду пересматривать, засыпался на собесе как раз на полифиле метода map.
@frontendscience
@frontendscience 3 жыл бұрын
@@d_r_robot да, это частый вопрос на собесах. Желаю больших успехов! И классного оффера!
@kostyapanov5070
@kostyapanov5070 11 ай бұрын
как называется тема?
@user_emodzithroll3553
@user_emodzithroll3553 3 жыл бұрын
Все они используются для циклов. А в чем разница между ними?
@frontendscience
@frontendscience 3 жыл бұрын
Предлагаю посмотреть видео :) а то аж обидно, как бы целый видос про это
@FrankyyBalboa
@FrankyyBalboa 2 жыл бұрын
Не понятно как работает reduce.
@bitmainuser4028
@bitmainuser4028 3 жыл бұрын
Всё хорошо, но давай уже современным синтаксисом пиши, динозавр)
@frontendscience
@frontendscience 3 жыл бұрын
Все хорошо, меня устраивает то, как я пишу, Дартаньян.
@alexblack43
@alexblack43 2 жыл бұрын
Зачем нужны эти методы, если существует универсальный for, который прекрасно справляется с любой из поставленных задач?
@frontendscience
@frontendscience 2 жыл бұрын
Предлагаю посмотреть видео и все станет ясно ;)
@ВасилийВатман
@ВасилийВатман Жыл бұрын
Дуже корисний контент! З Днем незалженості України!
@frontendscience
@frontendscience Жыл бұрын
З Днем незалежності України!
Writing our own implementation forEach, filter, map, reduce | JS array methods
2:02:01
Front-end Science із Сергієм Пузанковим
Рет қаралды 24 М.
20 методов массивов в JavaScript, которые вы должны знать.
50:55
Елена Литвинова — Искусство Веб-разработки 🛸
Рет қаралды 23 М.
Правильный подход к детям
00:18
Beatrise
Рет қаралды 11 МЛН
coco在求救? #小丑 #天使 #shorts
00:29
好人小丑
Рет қаралды 120 МЛН
Мясо вегана? 🧐 @Whatthefshow
01:01
История одного вокалиста
Рет қаралды 7 МЛН
Pet-projects. What projects must a beginner front-end developer do?
33:08
Front-end Science із Сергієм Пузанковим
Рет қаралды 166 М.
How to calculate the complexity of an algorithm by BIG O | The clearest explanation!
25:44
Front-end Science із Сергієм Пузанковим
Рет қаралды 129 М.
Методы массивов JavaScript - forEach, map, filter, reduce, some, every, sort, includes, indexOf
27:47
Александр Ламков — Friendly Frontend
Рет қаралды 10 М.
Методы массивов в JS   forEach, find, findIndex, filter, map, reduce
31:49
ВебКадеми | Юрий Ключевский
Рет қаралды 8 М.
Проблемы с reduce? Переходим от циклов на reduce за 20 минут в JavaScript
30:21
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 8 М.
Правильный подход к детям
00:18
Beatrise
Рет қаралды 11 МЛН