Тёмный

Каррирование в JavaScript. Создаем элементы с помощью carrying 

WebDev с нуля. Канал Алекса Лущенко
Просмотров 18 тыс.
50% 1

Курс JS 2.0: itgid.info/cou...
Курс HTML для JS разработчиков: itgid.info/cou...
Остальные курсы: itgid.info/
Телеграмм канал: t.me/itgid_info
Создаем элементы JS с помощью каррирования

Опубликовано:

 

27 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 41   
@ezhukovroman
@ezhukovroman 3 года назад
Великолепно рассказал, Саша ты ювелир!
@LNMaster_
@LNMaster_ 3 года назад
Тут вы просто показали работу механизма замыкания. Каррирование позволяет получить результат как и последовательным вызовом функций-замыканий, так и путем одного вызова с прокидыванием определенного кол-во аргументов в функцию. В контексте вашего примера - это t(tag, classList, text) и t(tag)(classList)(text), ну или как вы в своем примере показали t(tag, classList)(text) для последовательного вызова. В этих двух случаях результат должен быть одинаковый.
@ЕвгенийКраев-я2ж
@ЕвгенийКраев-я2ж 2 года назад
"вызова с прокидыванием определенного кол-во аргументов в функцию". Тут есть неточность не определенного количества аргументов, а точнее только одного (из определения каррирования. function curry(fn) { const arity = fn.length; return function $curry(...args) { if (args.length < arity) { return $curry.bind(null, ...args); } return fn.call(null, ...args); }; } И код указанный выше он не является каррированием - это частичное применение. Просто уже привыкли подменять понятие эти и так повелось, то что это стало каррированием.
@sergeyplotnikov5031
@sergeyplotnikov5031 3 года назад
Алекс, большое спасибо за понятное объяснение! Не хватило демонстрации со скобками друг за другом.
@AlexanderShutter
@AlexanderShutter 3 года назад
А будут обзоры новинок в редакторе VSCode? Смотрю в последней версии куча фишек новых.
@watchbotzz
@watchbotzz 3 года назад
Спасибо освежил память о каррировании
@romanmotovilov129
@romanmotovilov129 2 года назад
Спасибо! Все очень доходчиво!!!
@2009Spread
@2009Spread 3 года назад
все это знал, но было все равно интересно посмотреть
@MG231080
@MG231080 3 года назад
Понравилось 👍
@Nine_Tails
@Nine_Tails 2 года назад
Александр, мое уважение Всегда когда хочу понять для себя, что-то новое, сперва ищу сначала ваши видео и чаще всего нахожу Все просто прекрасно, все после просмотра понимаю, прям на моей волне, но Бренданом Эйрихом кляну, вырезайте места с ошибками, понимаю, что пишете наживую, без подготовки, но я часто вижу ошибку, и начинаю про себя думать это я дурак и так надо или же ошибка? и пока вы её не исправите, уже не усваиваю, то, что вы говорите, а жду пока вы её не исправите или пока я не пойму, что так и должно быть, просто я не понял из-за этого снижается усвояемость мной материала. Тяжело
@nikolaysmagin787
@nikolaysmagin787 3 года назад
Спасибо за видео, полезно)
@MrUnknownman1986
@MrUnknownman1986 3 года назад
Александр услышал наши молитвы, осталось React показать ))
@nikolaysmagin787
@nikolaysmagin787 3 года назад
Angular)
@nazariikarlyk2255
@nazariikarlyk2255 3 года назад
Круто было б посмотреть ваше обьяснение каррирования с неограниченым кол-вом аргументов.
@mariokun
@mariokun 3 года назад
Spread оператор в помощь
@nazariikarlyk2255
@nazariikarlyk2255 3 года назад
@@mariokun Ошибся, имел ввиду неограниченым кол-вом вызовов функции. Например sum(1)(2)(3)(4)...(999), результат которой был бы суммой всех переданых чисел
@MiqayelPetrosyan
@MiqayelPetrosyan 3 года назад
можно и так const crTag = (tag,text) =>{ return `${text}` } crTag ('h1','Hello') или const crTag = (tag,text) => `${text}` crTag ('h1','Hello')
@Atelier155
@Atelier155 3 года назад
Я думал это просто замыкание
@devbox9922
@devbox9922 3 года назад
спрашивали каррирование на собесе?)
@Atelier155
@Atelier155 3 года назад
@@devbox9922 нет
@nun8930
@nun8930 3 года назад
А в чем разница между этой функцией через замыкание, и обычной, которая возвращает также строку с 3 параметрами ?
@NeoJohnSmit
@NeoJohnSmit 3 года назад
Добрый день
@olehzahrebelnyi5996
@olehzahrebelnyi5996 3 года назад
Нравятся ваши видео. Когда-то сам учисля по вашим урокам. Но, данный видео урок не раскрывает сути применения каррирования. Скорее относится к обычным замыканиям. Тут не рассматривается возможность передачи множества аргументов, а так же, как на самом деле работает функция каррирования, что по моему мнению будет путать начинающих понять суть работы замыканий и каррирования.
@spiteman
@spiteman 3 года назад
Урок со второго раза понял, вопрос, что мешало создать функцию с двумя параметрами сразу? Или это просто пример, чтобы показать, но тогда было бы интересно понять, где это реально пригодится.
@aceracer5556
@aceracer5556 3 года назад
Нормально бы переписать кусочек кода где ошибка, реально путает...
@TalkerTube
@TalkerTube 3 года назад
10:23 - вот тут было непонятно о чем речь, что за объекты которые генерят теги?
@vitaliy794
@vitaliy794 3 года назад
написать через классы объект который генерирует разные теги.
@АртемШульга-ъ4у
@АртемШульга-ъ4у 3 года назад
Это замыкание
@konstantinkkk8397
@konstantinkkk8397 3 года назад
Ой, зачем же такой простой пример каррирования, так долго объяснять…
@muartem
@muartem 3 года назад
let elem = t("div")(t("h1")("hello") + t("p")("world")) Такое залетит?)
@vadimlii8873
@vadimlii8873 3 года назад
как запустить событие по локальному времени типа будильник ?
@IT_psychopath
@IT_psychopath 3 года назад
сразу догадался что замыкание просто стрелками, потом подтвердилось, было очень интересно, спасибо! это в фреймворках подобный механизм работает, только по сложнее. а почему пропал весь контент по картам yandex, google? работы с ними стало больше, а контента вообще нет.))) могу скинуть свою задачу, пока решаю ее, если интересно, там надо мало того чтоб админ мог выводить точи, маршруты, метки, так еще и объединить это все между обоими картами. там большое задание на деле, компания не смогла реализовать, я взялся ибо интересно стало.))))
@VladDubovyi
@VladDubovyi 3 года назад
Я видел еще такой синтаксис t("h1")("some text") когда подряд идут вызовы функций в ряд
@m.efremova4649
@m.efremova4649 2 года назад
И опять же, в который раз убеждаюсь, что никто не умеет объяснять так, как это делаете Вы!!
@НатальяЦаренкова-к6з
Спасибо. Недавно видела аналогичную запись. Теперь разобралась, благодаря Вам
@АлександрГриценко-н5ф
Походу лайкос палюбэ!!!
@jinke5935
@jinke5935 3 года назад
Интересно, а будут ли в ваших курсах какие-нибудь задачки на каррирование (типа как задачки на прокачку)?
@frontdevmansur
@frontdevmansur 3 года назад
Новое интро🔥🔥🔥
@vitaliidrapaliuk5652
@vitaliidrapaliuk5652 3 года назад
Спасибо, хорошее обьяснение)
Далее
Avaz Oxun - Yangisidan bor
14:29
Просмотров 361 тыс.
titan tvman's plan (skibidi toilet 77)
01:00
Просмотров 2,5 млн
Что нужно знать из JS перед React
32:50
10 JavaScript Interview Questions You HAVE TO KNOW
13:41
7 Лет Опыта в IT | Что я Понял?
19:56
Avaz Oxun - Yangisidan bor
14:29
Просмотров 361 тыс.