javaScript требует каждодневных тренировок, на канале @JavaScript_Quiz (телеграм) каждый день публикуются по 3 задачи в виде опроса с ссылкой на учебный материал, просто подпишись и прокачивайся.
Очень крутой урок.Раньше долго не мог понять эти темы. Рассказано "просто о сложно". Подобраны такие примеры из реальной жизни, для понимания на уровне повседневной жизни. Специалист своего дела.
вебинар супер, после других языков никак не мог привыкнуть к колбэкам, и временами не до конца с this было понятно, давно слышал и про call( ), но не вникал, а сейчас благодаря просто шикарному объяснению Дмитрия в этом вебинаре, наконец, кажется все это стало точно понятным. Отдельное спасибо Дмитрий за постоянные акценты, что то-то наверняка должно быть непонятно, лично мне, именно это очень помогает.
Контекст в JavaScript похож на контекст в предложении: «Петя бежит быстро, потому что Петя пытается поймать поезд.» «Петя бежит быстро, потому что он пытается поймать поезд. Второе предложение звучит лаконичнее. Предметом предложения является Петя, и мы можем сказать, что контекст предложения - это Петя, потому что он в центре внимания в это конкретное время в предложении. Даже местоимение «кто» относится к Пете. this нам нужен для доступа к методам и свойствам объекта, который вызывает функцию, тем более, что мы не всегда знаем, имя вызывающего объекта. Необходимо усвоить всего одно правило для определения this: значение this, внутри функции, определятся не в момент создания функции, а в момент ее вызова. Значение this определяет то, как вызывается функция. Несмотря на то, что кажется как будто this ссылается на объект внутри которого был определен метод объекта. В глобальной области видимости, контекст ссылается на объект window, если скрипт не находится в строгом режиме "use strict". Когда мы используем строгий режим, значение this, в глобальной области видимости (в глобальных функциях и анонимных функциях), будет undefined.
Ну вот 58 минута у нас setInterval(timer.tick, 1000); у нас єсть обєкт timer ми у окна window визиваєм метод window.setInterval(tick, 1000); у нас вилетаєт ошибка у window нет time , elem. Ет понятно, но куда делся наш обєкт timer????
Интересно вас смотреть. На любой вопрос найдете объяснение! Ваши вебинары- это лучшее, что есть на ютубе о веб-программировании. Всем друзьям уже о вас рассказал и они довольны вашими вебинарами) Продолжайте в том же духе)
Дмитрий просто Бог преподавания. Очень хорошо объясняет. Я прохожу эти темы почти впервые, так вроде понятно, но надо ещё почитать, порешать задачки, чтобы осознать полностью. Но объяснения очень наглядные, спасибо!!! Буду вас смотреть!!!
Дмитрий спасибо вам, 2 года назад я посмотрел ваш видосик по основам программирования, вы рекомендовали начинать с js, возможно, благодаря вам, работаю в it, в достаточно крупной компании. Продолжайте в том же духе! :)
Коля Правда а расскажите поэтапно как вы изучили и на каком этапе изучения нашли работу?! И в какую сторону после js пошли изучать дальше?! Спасибо заранее большое. Если можно сюда написать lubimovanity@gmail.com. подскажите ,так сказать,младшему "брату" план действий по изучению?!
чувак ты просто король обучающих видосов)) хоть я что то из материала и знаю, но все равно выучил совсем недавно, поэтому полезно повторить, попрактиковаться, и закрепить знания, поэтому большое спасибо!
Я изучаю JavaScript после Python. Действительно, для понимания единственная сложность - это асинхронность. Видео помогло прояснить некоторые моменты.))
Отличный контент наряду с книгой Симдянова по PHP где собственно тоже берется сразу с основ у вас наиболее адекватная структура и подача материала, спасибо огромное за ваши труды.
Спасибо, Дмитрий, вы очень круто объясняете - сразу открылись глаза на JS :) и пришло глубинное понимание. Даже пришли мысли, что и где в проектах было сделано неправильно, и как поправить :)
Посмотрел первый раз, поплакал, пошел подучил основы) Вернулся через неделю, пересмотрел , уже понятно более менее) Через недельку напишу че за КАЛЛбэки такие и как их простым людям понять)
Хорошо знаю JS, просто было интересно, чему там учат на ютубах) Неплохие объяснения + человек хотя бы умеет нормально разговаривать, а не как какие-нибудь хаудихо) Занудные замечания: За использование window.onload без веских причин - надо бить по рукам, а не поощрять!) 37:53 - querySelectorAll возвращает не массив, а список элементов NodeList. console.log( document.querySelectorAll("body") instanceof Array ); // false console.log( document.querySelectorAll("body") instanceof NodeList ); // true 55:57 - вместо innerHTML хорошо бы писать textContent, если туда передается именно текст, а не HTML. 1:05:40 - Функция срабатывает только потому что конкретно тут min равен нулю. Она должна выглядеть так: return Math.floor( Math.random() * (max - min + 1) + min ); 1:27:12 - if (steps === 0) ошибка. Функция срабатывает просто потому что 1000 / 50 получается целым числом. Было бы дробным, оно бы прошло мимо нуля в минус и никогда бы не останавливалось. Нужна проверка if (steps
Единственное что скажу, если не понятно , практиуйтесь и пересматривайте уроки!! И все будет рано или поздно понятно) Я не мог понять до конца что такое контекст , call, apply .. Сейчас смотрю и для меня ето все просто елементарно выглядит) Терепение, все будет)
Все подробно объяснил, про контекст стало понятно. Но с замыканиями я не понял, Дмитрий объяснил что это просто адресация к переменной к родительском пространстве имен. Но во всех примерах в интернете и книгах по замыканиям была какая-то жесть с возвратом функций и т.д. а тут о ней ни слова
если функция находится в функции, то она видит все переменные родительской функции по правилу замыкания... А Дмитрий - он просто напросто избегает тавтологии и реально крутой преподаватель, потому и все так просто и понятно.. Если бы не его уроки- я бы никогда не понял ничего по програмированию... В который раз- благодарю за уроки и продолжаю учиться)
Смотрю уже не 1 видео от этого автора, Потрясающие вебинары! где ссылка на покупку? Готов купить за миллион. Только слушателей обычно много, отвлекают своими глупыми шутками автора в комментариях.
Как же вы меня запутали с рандомом из доступных элементов 1:06 ... Никак не мог понять, зачем вы 0 отправляете, если randon всё равно принимает значение нуля. Зачем из length вычитать единицу, а потом в math эту же единицу прибавлять к length. Как же я тупил. Искал сокральный смысл. Над this так не тупил, над call ещё меньше думал. А тут весь день ходил и думал - "почему, зачем?" . А потом понял, что все мы люди... ) В общем доверяй, но проверяй. А формула там такая: Math.random() * (max - min) + min; Не включительно max.
Неправильно, потому что получится Float число, Дмитрий использовал floor(), чтобы округлить вниз, а после добавил 1. И получается, что все значения рандома от 0 до 1 будут 1
@@ВладиславАндреев-з3н Не понял. Сначала считаем то, что в скобке. В скобках получаем float от Math.random, умножаем на lengh - 0 +1 (в инструкции выше вычитали эту же единицу), а только после этого применяем floor. Floor применяется для того, что бы на выходе получать целые числа, ну и 0 будет чаще выпадать. Но в любом случае, код не корректный, хоть и работает. С тем же успехом, можно было из length не вычитать ничего и не отправлять 0 в min. Min тогда вообще не нужен был.
Здравствуйте. Спасет оборачивание в анонимную немедленно вызываемую функцию (IIFE): items[i].onclick = function (x){ return activeItem}(i); Function activeItem(x){ Items[x].classList.toggle(‘item-active’) }
рекомендовали это видео, чтобы разобраться в данной теме... Все хорошо, все понятно... Но без анонимной функции теряется контекст Дмитрий даже не пытался объяснить.. И так же происходит в куче других видео, книг и статей...А именно это я хотел выкурить.. Это какая загадочная вещь :)
Добрый день. Спасибо за видео. Дмитрий, подскажите, 40:50 мы же здесь можем использовать делегирование событий, верно? Повесить на родительский div событие, и через event.target.closest('div) при клике на конкретный див - будет происходить событие. Эти два способа по своей сути равнозначны? Если есть какие-то нюансовые различия ? Спасибо
Дмитрий, а почему вы говорите на 43:00, что только this можно применять и замыкание тут применить невозможно? Это же не так. Через замыкание можно решить данную задачу.
ruclips.net/video/LM0tW2MZJZ4/видео.html Функция mtRand написана не верно. С min=0 работать будет, но с другими значениями нет. Необходимо исправить - return Math.floor(Math.rabdom() * (min - max +1)) + min;
Да это один из лучших преподавателей в инете, я даже могу сказать, что не знаю лучше чем он. На этапе верстки еще был вейап что-то наподобие, но там совсем детский сад, а тут уже программирование. Надеюсь этот человек получает достойную оплату своего труда.
Если я правильно понял, то в примере с таймером в первом случае передается ссылка на функцию ( timer.tick ) и ее уже setInterval вызывает в window. => ошибка. Во втором случае анонимная функция вызывает метод timer`a, который она видит по замыканию.
Дмитрий Лаврик, я нашел ошибку в вашем коде. Не return Math.floor(Math.random()*(max-min+1)); а return min + Math.floor(Math.random()*(max-min+1)); Ваш код работает нормально поскольку min = 0, возьмите другой min и работать не будет.
Спасибо! Некоторые знания по JS были. Хотел узнать немного о замыкании. Так получилось, что узнал что за кулбэки, и как используються - кажется с этим я хорошо разобрался. А вот с замыканиями - я только понял что они используются для получения каких то переменных (обьектов или значиния) из функции которую интерпретатор в начале запуска проинициализировал, но мы еще не использовали, или уже вышли за границы её видимости. Как то так я понял. Вообщем мутно еще понимаю замыкание. И контекст связаный с замыканием так же плохо зашел. Буду разбираться с этим!) Можете книжку посоветовать хорошую по JS?
ruclips.net/video/LM0tW2MZJZ4/видео.html А как же event.target ? До изучения контекста всегда решал подобную задачу event.target или event.currentTarget по ситуации.
Учитель! Подскажите пожалуйста, на 1:30:19 вы создаёте функцию callback, которая выполниться после того как элемент исчезнет, так зачем же создавать эту функцию, если можно в if statement после clearInterval, прописать исчезновение?
Aleksejs Aleksejevs насколько я понял тут фишка в том что можно любое действие прописать , а не определенное - то есть функция становится универсальной и её можно применять к разным объектам с разным колбэком . Просто в параметр функции где привязан колбэк можно записать любую функцию
ну сомнительно порой. Замыкание (англ. closure) в программировании - функция первого класса, в теле которой присутствуют ссылки на переменные, объявленные вне тела этой функции в окружающем коде и не являющиеся её параметрами. Говоря другим языком, замыкание - функция, которая ссылается на свободные переменные в своей области видимости. А не то, что он нагородил =) Вроде и не обманул, но запутал знатно.
В примере на 41:40 можно обойтись this же? for (var i = 0; i < items.lenth; i++){ items[i].onClick = function{ classList.toogle('item-active'); } } Так будет же работать?
Самый лучший преподаватель, из тех кого я видел на ютубе. Умеет разжевать даже самые сложные вещи
ты просто мало
Парень действительно хорошо молвит, но есть ребята, которые как минимум не хуже. Подписка +
@@SakurUKR например? Очень интересно ещё посмотреть.
Да еще с отличным чувством юмора - 1:35:16
javaScript требует каждодневных тренировок, на канале @JavaScript_Quiz (телеграм) каждый день публикуются по 3 задачи в виде опроса с ссылкой на учебный материал, просто подпишись и прокачивайся.
Очень крутой урок.Раньше долго не мог понять эти темы. Рассказано "просто о сложно". Подобраны такие примеры из реальной жизни, для понимания на уровне повседневной жизни. Специалист своего дела.
вебинар супер, после других языков никак не мог привыкнуть к колбэкам, и временами не до конца с this было понятно, давно слышал и про call( ), но не вникал, а сейчас благодаря просто шикарному объяснению Дмитрия в этом вебинаре, наконец, кажется все это стало точно понятным. Отдельное спасибо Дмитрий за постоянные акценты, что то-то наверняка должно быть непонятно, лично мне, именно это очень помогает.
Контекст в JavaScript похож на контекст в предложении:
«Петя бежит быстро, потому что Петя пытается поймать поезд.»
«Петя бежит быстро, потому что он пытается поймать поезд.
Второе предложение звучит лаконичнее. Предметом предложения является Петя, и мы можем сказать, что контекст предложения - это Петя, потому что он в центре внимания в это конкретное время в предложении. Даже местоимение «кто» относится к Пете.
this нам нужен для доступа к методам и свойствам объекта, который вызывает функцию, тем более, что мы не всегда знаем, имя вызывающего объекта.
Необходимо усвоить всего одно правило для определения this: значение this, внутри функции, определятся не в момент создания функции, а в момент ее вызова.
Значение this определяет то, как вызывается функция. Несмотря на то, что кажется как будто this ссылается на объект внутри которого был определен метод объекта.
В глобальной области видимости, контекст ссылается на объект window, если скрипт не находится в строгом режиме "use strict".
Когда мы используем строгий режим, значение this, в глобальной области видимости (в глобальных функциях и анонимных функциях), будет undefined.
+
Превосходно объяснил 👍
Ну вот 58 минута у нас setInterval(timer.tick, 1000); у нас єсть обєкт timer
ми у окна window визиваєм метод window.setInterval(tick, 1000);
у нас вилетаєт ошибка у window нет time , elem. Ет понятно, но куда делся наш обєкт timer????
Низкий вам поклон, мистер
так, пересмотрим еще разок!
Какой молодец! Многие свои знания демонстрируют без внимания на то, чтобы научить, а здесь все очень хорошо. Спасибо!
Интересно вас смотреть. На любой вопрос найдете объяснение! Ваши вебинары- это лучшее, что есть на ютубе о веб-программировании. Всем друзьям уже о вас рассказал и они довольны вашими вебинарами) Продолжайте в том же духе)
Дмитрий просто Бог преподавания. Очень хорошо объясняет. Я прохожу эти темы почти впервые, так вроде понятно, но надо ещё почитать, порешать задачки, чтобы осознать полностью. Но объяснения очень наглядные, спасибо!!! Буду вас смотреть!!!
Как же доступно ты объясняешь. Благодарю!
и ты понял в чем суть замыканий и как надо с ними работать?
Про замыкания и колбэки очень круто и просто объяснил! Лучше всех кого я смотрел на ютубе.
Дмитрий спасибо вам, 2 года назад я посмотрел ваш видосик по основам программирования, вы рекомендовали начинать с js, возможно, благодаря вам, работаю в it, в достаточно крупной компании. Продолжайте в том же духе! :)
Николай, а сколько времени вы учились чтоб попасть на роботу?
Верстку давно знал, но на любительском уровне, на работу пошел можно сказать сразу
Коля Правда а расскажите поэтапно как вы изучили и на каком этапе изучения нашли работу?! И в какую сторону после js пошли изучать дальше?! Спасибо заранее большое. Если можно сюда написать lubimovanity@gmail.com. подскажите ,так сказать,младшему "брату" план действий по изучению?!
@@ДимДимыч-ч8и Верстка - канал Web Design Master, Потом js чистый, потом vue.js
неужели купленный отзыв?
Последний раз я с таким удовольствием смотрел уроки Игоря Борисова из Специалиста по php... Талантливо подаете, Дмитрий.
чувак ты просто король обучающих видосов)) хоть я что то из материала и знаю, но все равно выучил совсем недавно, поэтому полезно повторить, попрактиковаться, и закрепить знания, поэтому большое спасибо!
Я изучаю JavaScript после Python. Действительно, для понимания единственная сложность - это асинхронность. Видео помогло прояснить некоторые моменты.))
качество изображения не очень чёткое, но качество материала оооочень чёткое. Пересматриваю на одном дыхании
Отличный контент наряду с книгой Симдянова по PHP где собственно тоже берется сразу с основ у вас наиболее адекватная структура и подача материала, спасибо огромное за ваши труды.
тупо лучший! смотришь один его ролик и потом начинаешь сам пробовать, уже с пониманием.
Хороший вебинар, не знаю почему, но только после него начало приходить понимание про this и области видимости
Вижу Лаврика - ставлю лайк!
Спасибо, Дмитрий, вы очень круто объясняете - сразу открылись глаза на JS :) и пришло глубинное понимание. Даже пришли мысли, что и где в проектах было сделано неправильно, и как поправить :)
Супер, мне понравился вебинар. Многое для себя уяснил и многое прояснилось.
Ну что тут можно сказать, вижу новые вебинары от Дмитрия, сразу ставлю лике.
Посмотрел первый раз, поплакал, пошел подучил основы)
Вернулся через неделю, пересмотрел , уже понятно более менее)
Через недельку напишу че за КАЛЛбэки такие и как их простым людям понять)
Спасибо за вебинар мучачо, снимаю перед вами свое сомбреро
Про коллбэки с 1:16:00
сенкс браза
Спасибо! за ними и пришел!))
Потрясно! Я наконец познала коллбэки).
И про замыкания я уже поняла, но повторить было оч.полезно.
41:14 - Ещё можно анонимную функцию в onclick и туда items[i].classList.toggle('item-active'), только если в цикле писать не var i, а let i
Хорошо знаю JS, просто было интересно, чему там учат на ютубах)
Неплохие объяснения + человек хотя бы умеет нормально разговаривать, а не как какие-нибудь хаудихо) Занудные замечания:
За использование window.onload без веских причин - надо бить по рукам, а не поощрять!)
37:53 - querySelectorAll возвращает не массив, а список элементов NodeList.
console.log( document.querySelectorAll("body") instanceof Array ); // false
console.log( document.querySelectorAll("body") instanceof NodeList ); // true
55:57 - вместо innerHTML хорошо бы писать textContent, если туда передается именно текст, а не HTML.
1:05:40 - Функция срабатывает только потому что конкретно тут min равен нулю. Она должна выглядеть так:
return Math.floor( Math.random() * (max - min + 1) + min );
1:27:12 - if (steps === 0) ошибка. Функция срабатывает просто потому что 1000 / 50 получается целым числом. Было бы дробным, оно бы прошло мимо нуля в минус и никогда бы не останавливалось. Нужна проверка if (steps
А что по js посоветуешь ?
Спасибо вам за вебинары
Спасибо Огромное за Урок!!!!!!!
Хорошо описал сложные вопросы. Очень часто задают такие вопросы на собеседованиях.
это лучший урок по js ! чувак талант
мб. Так в чем суть замыканий в js?
@@xenm85 замыкания - способность языка создавать приватный контекст. В функционале - где используется работа с валидацией полей это используется
Дмитрий кросавчег, всё объясняет четко
один из лучших преподавателей js
Хороший вебинар, время было "потрачено" с пользой.
Господи, только благодаря вам я смог понять что делает this и перестал бояться ООП в языках в целом!
и ты понял в чем суть замыканий и как надо с ними работать? И чем ООП js отличается от классики?
Чудесно) спасибо!)
Жизненные примеры очень радуют и способствуют пониманию!
ООООООООО да наконец-то КТО-то это сделал доходчиво и внятно БЛАГОДАРЮ.....
Единственное что скажу, если не понятно , практиуйтесь и пересматривайте уроки!! И все будет рано или поздно понятно) Я не мог понять до конца что такое контекст , call, apply .. Сейчас смотрю и для меня ето все просто елементарно выглядит)
Терепение, все будет)
Димон, этот видос крутой, го еще жести и посложнее, чтобы у меня мозг совсем взорвался.Это испытание было пройдено и я всё понял.
Спасибо большое! Просто реанимировал. Препод от бога.
Все подробно объяснил, про контекст стало понятно. Но с замыканиями я не понял, Дмитрий объяснил что это просто адресация к переменной к родительском пространстве имен. Но во всех примерах в интернете и книгах по замыканиям была какая-то жесть с возвратом функций и т.д. а тут о ней ни слова
если функция находится в функции, то она видит все переменные родительской функции по правилу замыкания... А Дмитрий - он просто напросто избегает тавтологии и реально крутой преподаватель, потому и все так просто и понятно.. Если бы не его уроки- я бы никогда не понял ничего по програмированию... В который раз- благодарю за уроки и продолжаю учиться)
Смотрю уже не 1 видео от этого автора, Потрясающие вебинары! где ссылка на покупку? Готов купить за миллион. Только слушателей обычно много, отвлекают своими глупыми шутками автора в комментариях.
Как же вы меня запутали с рандомом из доступных элементов 1:06 ...
Никак не мог понять, зачем вы 0 отправляете, если randon всё равно принимает значение нуля. Зачем из length вычитать единицу, а потом в math эту же единицу прибавлять к length.
Как же я тупил. Искал сокральный смысл. Над this так не тупил, над call ещё меньше думал. А тут весь день ходил и думал - "почему, зачем?" . А потом понял, что все мы люди... )
В общем доверяй, но проверяй.
А формула там такая: Math.random() * (max - min) + min;
Не включительно max.
Неправильно, потому что получится Float число, Дмитрий использовал floor(), чтобы округлить вниз, а после добавил 1.
И получается, что все значения рандома от 0 до 1 будут 1
@@ВладиславАндреев-з3н
Не понял.
Сначала считаем то, что в скобке. В скобках получаем float от Math.random, умножаем на lengh - 0 +1 (в инструкции выше вычитали эту же единицу), а только после этого применяем floor. Floor применяется для того, что бы на выходе получать целые числа, ну и 0 будет чаще выпадать.
Но в любом случае, код не корректный, хоть и работает. С тем же успехом, можно было из length не вычитать ничего и не отправлять 0 в min. Min тогда вообще не нужен был.
Блин, гениальные объяснения 🎉
Спасибо вам большое!все очень понятно!
Здравствуйте.
Спасет оборачивание в анонимную немедленно вызываемую функцию (IIFE):
items[i].onclick = function (x){
return activeItem}(i);
Function activeItem(x){
Items[x].classList.toggle(‘item-active’)
}
Все что надо смотреть, ищу с начало у Лаврика.
рекомендовали это видео, чтобы разобраться в данной теме... Все хорошо, все понятно... Но без анонимной функции теряется контекст Дмитрий даже не пытался объяснить.. И так же происходит в куче других видео, книг и статей...А именно это я хотел выкурить.. Это какая загадочная вещь :)
Стоит пересмотреть! 👍🏻
Про колбеки бы добавил что их можно вызывать не только в конце, а везде где надо ответвиться от основного кода функции
Добрый день. Спасибо за видео.
Дмитрий, подскажите, 40:50 мы же здесь можем использовать делегирование событий, верно?
Повесить на родительский div событие, и через event.target.closest('div) при клике на конкретный див - будет происходить событие.
Эти два способа по своей сути равнозначны?
Если есть какие-то нюансовые различия ?
Спасибо
супер, спасибо! долго билась с этой темой до этого видео
44:30 почему нет? В жизни же коту можно дать ускорение. И как потом дальность полета определить тогда, если параметр ускорение не передаем?
Дмитрий, а почему вы говорите на 43:00, что только this можно применять и замыкание тут применить невозможно? Это же не так. Через замыкание можно решить данную задачу.
Все доступно объяснил, молодец ;)
интересная подача инфы)) было интересно) спасибо)
за этот урок - однозначно подписка
Полезный вебинар. Спасибо!
ruclips.net/video/LM0tW2MZJZ4/видео.html Функция mtRand написана не верно. С min=0 работать будет, но с другими значениями нет. Необходимо исправить - return Math.floor(Math.rabdom() * (min - max +1)) + min;
Бесценное объяснение, как дважды два.
Человек свободно владеет тем, что объясняет.
Да это один из лучших преподавателей в инете, я даже могу сказать, что не знаю лучше чем он. На этапе верстки еще был вейап что-то наподобие, но там совсем детский сад, а тут уже программирование. Надеюсь этот человек получает достойную оплату своего труда.
Да неужели, сколько лет я уже жду корс по javascript от лаврика.
Как к вам попасть на курс js, ? К сожалению курс начался , когда будет новый поток ?) недавно начала смотреть ваши уроки очень доходчиво объясняете.
Если я правильно понял, то в примере с таймером в первом случае передается ссылка на функцию ( timer.tick ) и ее уже setInterval вызывает в window. => ошибка.
Во втором случае анонимная функция вызывает метод timer`a, который она видит по замыканию.
Я при событии вместо this использовал объект event тоже работает 39.09
чисто под меня урок, правда я уже знаю что такое замыкания))
так что буду смотреть ехуууу ты топ
Вебинар класс. Ссылочку для отзывов в вк тоже добавляй в описание!
17 год, я был так молод и горяч
интересно рассказывает я даже не понял как час прошел и самые нужные темы
Классно объясняешь, спасибо
Не хватает навигации по стой длинному ролику, пол часа чтобы услышал про замыкание.. а так спасибо большое, весьма информативно.
Дмитрий Лаврик, я нашел ошибку в вашем коде. Не return Math.floor(Math.random()*(max-min+1));
а return min + Math.floor(Math.random()*(max-min+1));
Ваш код работает нормально поскольку min = 0, возьмите другой min и работать не будет.
Так в прошлом уроке min + просто перенесено в конец строки: Math.floor(Math.random()*(max-min+1)) + min
спасибо за видос конечно. но то, что этот видос создан в качестве приманки на твои курсы, бесит нереально) и заканчиваешь всегда на самом интересном
Спасибо! Некоторые знания по JS были. Хотел узнать немного о замыкании. Так получилось, что узнал что за кулбэки, и как используються - кажется с этим я хорошо разобрался. А вот с замыканиями - я только понял что они используются для получения каких то переменных (обьектов или значиния) из функции которую интерпретатор в начале запуска проинициализировал, но мы еще не использовали, или уже вышли за границы её видимости. Как то так я понял. Вообщем мутно еще понимаю замыкание. И контекст связаный с замыканием так же плохо зашел. Буду разбираться с этим!)
Можете книжку посоветовать хорошую по JS?
ruclips.net/video/LM0tW2MZJZ4/видео.html
А как же event.target ? До изучения контекста всегда решал подобную задачу event.target или event.currentTarget по ситуации.
Спасибо огромное за урок, я всё понял) Материал отличный, покупать курс я, конечно же, не буду) (ибо школьник)
Дмитрий красава!
Учитель! Подскажите пожалуйста, на 1:30:19 вы создаёте функцию callback, которая выполниться после того как элемент исчезнет, так зачем же создавать эту функцию, если можно в if statement после clearInterval, прописать исчезновение?
Aleksejs Aleksejevs насколько я понял тут фишка в том что можно любое действие прописать , а не определенное - то есть функция становится универсальной и её можно применять к разным объектам с разным колбэком . Просто в параметр функции где привязан колбэк можно записать любую функцию
супер. очень доступно! было бы не плохо про promise такое же выложить!
Ребята, подскажите, пожалуйста, на каком времени говорится про Замыкания. Не охота всё видео смотреть
Ёкарный бабай. Первый класс вторая четверть.... И чего тут непонятного было 4 года назад? )))
Идеально все обьяснил, спасибо!
а можно ли было на 31 строчку просто прописать elem.style.dispalay = "none"? В чем смысл именно делать параметром вызов?
К чему тогда этот новый термин _"замыкание",_ если есть логичный и старый термин из С/С++ _"область видимости"?!_
замыкание области видимости
42:30 items[i] вообще то проходит )
ну сомнительно порой.
Замыкание (англ. closure) в программировании - функция первого класса, в теле которой присутствуют ссылки на переменные, объявленные вне тела этой функции в окружающем коде и не являющиеся её параметрами. Говоря другим языком, замыкание - функция, которая ссылается на свободные переменные в своей области видимости.
А не то, что он нагородил =) Вроде и не обманул, но запутал знатно.
кот на 17-й минуте шикарный)
я подумал это человек с длинной рукой
Физ мат ВУЗа обязателен для понимания программирования? Я тракторист, есть ли шансы понять JS ?
физмат вам не нужен, дерзайте, изучайте
Очень хорошо!
Мне кажется, что правильнее было бы "замыкание" назвать "замкнутость". Тогда яснее смысл.
Zhivago трудно произносить, вот и вся проблема названия 🤭
а можно принимать addevantListener() metod без исползвания this?
В примере на 41:40 можно обойтись this же?
for (var i = 0; i < items.lenth; i++){
items[i].onClick = function{
classList.toogle('item-active');
}
}
Так будет же работать?
будет но это не эффективно. Вы же память жрете .
звонок спине)
Спасибо, очень полезно!
Как записаться на вебинар следующий?
смотрю на х1.25, годно:)
Не знал, что соболев так шарит
Браво! Супер!
почему я переписываю все точь-в-точь как на экране(проверяю все в плоть до каждого символа) и консоль мне дает ошибку
не нужно переписывать, нужно понимания писать
Спасибо ! за урок