javaScript требует каждодневных тренировок, на канале @JavaScript_Quiz (телеграм) каждый день публикуются по 3 задачи в виде опроса с ссылкой на учебный материал, просто подпишись и прокачивайся.
Контекст в 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????
вебинар супер, после других языков никак не мог привыкнуть к колбэкам, и временами не до конца с this было понятно, давно слышал и про call( ), но не вникал, а сейчас благодаря просто шикарному объяснению Дмитрия в этом вебинаре, наконец, кажется все это стало точно понятным. Отдельное спасибо Дмитрий за постоянные акценты, что то-то наверняка должно быть непонятно, лично мне, именно это очень помогает.
Очень крутой урок.Раньше долго не мог понять эти темы. Рассказано "просто о сложно". Подобраны такие примеры из реальной жизни, для понимания на уровне повседневной жизни. Специалист своего дела.
Дмитрий спасибо вам, 2 года назад я посмотрел ваш видосик по основам программирования, вы рекомендовали начинать с js, возможно, благодаря вам, работаю в it, в достаточно крупной компании. Продолжайте в том же духе! :)
Коля Правда а расскажите поэтапно как вы изучили и на каком этапе изучения нашли работу?! И в какую сторону после js пошли изучать дальше?! Спасибо заранее большое. Если можно сюда написать lubimovanity@gmail.com. подскажите ,так сказать,младшему "брату" план действий по изучению?!
Интересно вас смотреть. На любой вопрос найдете объяснение! Ваши вебинары- это лучшее, что есть на ютубе о веб-программировании. Всем друзьям уже о вас рассказал и они довольны вашими вебинарами) Продолжайте в том же духе)
Дмитрий просто Бог преподавания. Очень хорошо объясняет. Я прохожу эти темы почти впервые, так вроде понятно, но надо ещё почитать, порешать задачки, чтобы осознать полностью. Но объяснения очень наглядные, спасибо!!! Буду вас смотреть!!!
Я изучаю JavaScript после Python. Действительно, для понимания единственная сложность - это асинхронность. Видео помогло прояснить некоторые моменты.))
чувак ты просто король обучающих видосов)) хоть я что то из материала и знаю, но все равно выучил совсем недавно, поэтому полезно повторить, попрактиковаться, и закрепить знания, поэтому большое спасибо!
Спасибо, Дмитрий, вы очень круто объясняете - сразу открылись глаза на JS :) и пришло глубинное понимание. Даже пришли мысли, что и где в проектах было сделано неправильно, и как поправить :)
Отличный контент наряду с книгой Симдянова по PHP где собственно тоже берется сразу с основ у вас наиболее адекватная структура и подача материала, спасибо огромное за ваши труды.
Посмотрел первый раз, поплакал, пошел подучил основы) Вернулся через неделю, пересмотрел , уже понятно более менее) Через недельку напишу че за КАЛЛбэки такие и как их простым людям понять)
Единственное что скажу, если не понятно , практиуйтесь и пересматривайте уроки!! И все будет рано или поздно понятно) Я не мог понять до конца что такое контекст , call, apply .. Сейчас смотрю и для меня ето все просто елементарно выглядит) Терепение, все будет)
Да это один из лучших преподавателей в инете, я даже могу сказать, что не знаю лучше чем он. На этапе верстки еще был вейап что-то наподобие, но там совсем детский сад, а тут уже программирование. Надеюсь этот человек получает достойную оплату своего труда.
Все подробно объяснил, про контекст стало понятно. Но с замыканиями я не понял, Дмитрий объяснил что это просто адресация к переменной к родительском пространстве имен. Но во всех примерах в интернете и книгах по замыканиям была какая-то жесть с возвратом функций и т.д. а тут о ней ни слова
если функция находится в функции, то она видит все переменные родительской функции по правилу замыкания... А Дмитрий - он просто напросто избегает тавтологии и реально крутой преподаватель, потому и все так просто и понятно.. Если бы не его уроки- я бы никогда не понял ничего по програмированию... В который раз- благодарю за уроки и продолжаю учиться)
Хорошо знаю 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
Смотрю уже не 1 видео от этого автора, Потрясающие вебинары! где ссылка на покупку? Готов купить за миллион. Только слушателей обычно много, отвлекают своими глупыми шутками автора в комментариях.
Как же вы меня запутали с рандомом из доступных элементов 1:06 ... Никак не мог понять, зачем вы 0 отправляете, если randon всё равно принимает значение нуля. Зачем из length вычитать единицу, а потом в math эту же единицу прибавлять к length. Как же я тупил. Искал сокральный смысл. Над this так не тупил, над call ещё меньше думал. А тут весь день ходил и думал - "почему, зачем?" . А потом понял, что все мы люди... ) В общем доверяй, но проверяй. А формула там такая: Math.random() * (max - min) + min; Не включительно max.
Неправильно, потому что получится Float число, Дмитрий использовал floor(), чтобы округлить вниз, а после добавил 1. И получается, что все значения рандома от 0 до 1 будут 1
@@user-my3ep8mu8z Не понял. Сначала считаем то, что в скобке. В скобках получаем 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’) }
рекомендовали это видео, чтобы разобраться в данной теме... Все хорошо, все понятно... Но без анонимной функции теряется контекст Дмитрий даже не пытался объяснить.. И так же происходит в куче других видео, книг и статей...А именно это я хотел выкурить.. Это какая загадочная вещь :)
Дмитрий Лаврик, я нашел ошибку в вашем коде. Не return Math.floor(Math.random()*(max-min+1)); а return min + Math.floor(Math.random()*(max-min+1)); Ваш код работает нормально поскольку min = 0, возьмите другой min и работать не будет.
Добрый день. Спасибо за видео. Дмитрий, подскажите, 40:50 мы же здесь можем использовать делегирование событий, верно? Повесить на родительский div событие, и через event.target.closest('div) при клике на конкретный див - будет происходить событие. Эти два способа по своей сути равнозначны? Если есть какие-то нюансовые различия ? Спасибо
czcams.com/video/LM0tW2MZJZ4/video.html Функция mtRand написана не верно. С min=0 работать будет, но с другими значениями нет. Необходимо исправить - return Math.floor(Math.rabdom() * (min - max +1)) + min;
czcams.com/video/LM0tW2MZJZ4/video.html А как же event.target ? До изучения контекста всегда решал подобную задачу event.target или event.currentTarget по ситуации.
Спасибо! Некоторые знания по JS были. Хотел узнать немного о замыкании. Так получилось, что узнал что за кулбэки, и как используються - кажется с этим я хорошо разобрался. А вот с замыканиями - я только понял что они используются для получения каких то переменных (обьектов или значиния) из функции которую интерпретатор в начале запуска проинициализировал, но мы еще не использовали, или уже вышли за границы её видимости. Как то так я понял. Вообщем мутно еще понимаю замыкание. И контекст связаный с замыканием так же плохо зашел. Буду разбираться с этим!) Можете книжку посоветовать хорошую по JS?
Дмитрий, благодарю за урок. А вот для таких как я, кто с первого раза ничего не понял. Обучение JavaScript "this - контекст исполнения функции" Посмотри и все поймешь --- czcams.com/video/3btM1eujf9s/video.html
Если я правильно понял, то в примере с таймером в первом случае передается ссылка на функцию ( timer.tick ) и ее уже setInterval вызывает в window. => ошибка. Во втором случае анонимная функция вызывает метод timer`a, который она видит по замыканию.
Дмитрий, а почему вы говорите на 43:00, что только this можно применять и замыкание тут применить невозможно? Это же не так. Через замыкание можно решить данную задачу.
Самый лучший преподаватель, из тех кого я видел на ютубе. Умеет разжевать даже самые сложные вещи
ты просто мало
Парень действительно хорошо молвит, но есть ребята, которые как минимум не хуже. Подписка +
@@SakurUKR например? Очень интересно ещё посмотреть.
Да еще с отличным чувством юмора - 1:35:16
javaScript требует каждодневных тренировок, на канале @JavaScript_Quiz (телеграм) каждый день публикуются по 3 задачи в виде опроса с ссылкой на учебный материал, просто подпишись и прокачивайся.
так, пересмотрим еще разок!
Контекст в 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????
Низкий вам поклон, мистер
вебинар супер, после других языков никак не мог привыкнуть к колбэкам, и временами не до конца с this было понятно, давно слышал и про call( ), но не вникал, а сейчас благодаря просто шикарному объяснению Дмитрия в этом вебинаре, наконец, кажется все это стало точно понятным. Отдельное спасибо Дмитрий за постоянные акценты, что то-то наверняка должно быть непонятно, лично мне, именно это очень помогает.
Очень крутой урок.Раньше долго не мог понять эти темы. Рассказано "просто о сложно". Подобраны такие примеры из реальной жизни, для понимания на уровне повседневной жизни. Специалист своего дела.
Дмитрий спасибо вам, 2 года назад я посмотрел ваш видосик по основам программирования, вы рекомендовали начинать с js, возможно, благодаря вам, работаю в it, в достаточно крупной компании. Продолжайте в том же духе! :)
Николай, а сколько времени вы учились чтоб попасть на роботу?
Верстку давно знал, но на любительском уровне, на работу пошел можно сказать сразу
Коля Правда а расскажите поэтапно как вы изучили и на каком этапе изучения нашли работу?! И в какую сторону после js пошли изучать дальше?! Спасибо заранее большое. Если можно сюда написать lubimovanity@gmail.com. подскажите ,так сказать,младшему "брату" план действий по изучению?!
@@user-ir5xs8ne6l Верстка - канал Web Design Master, Потом js чистый, потом vue.js
неужели купленный отзыв?
Спасибо Огромное за Урок!!!!!!!
Как же доступно ты объясняешь. Благодарю!
и ты понял в чем суть замыканий и как надо с ними работать?
Интересно вас смотреть. На любой вопрос найдете объяснение! Ваши вебинары- это лучшее, что есть на ютубе о веб-программировании. Всем друзьям уже о вас рассказал и они довольны вашими вебинарами) Продолжайте в том же духе)
Какой молодец! Многие свои знания демонстрируют без внимания на то, чтобы научить, а здесь все очень хорошо. Спасибо!
Про замыкания и колбэки очень круто и просто объяснил! Лучше всех кого я смотрел на ютубе.
Дмитрий просто Бог преподавания. Очень хорошо объясняет. Я прохожу эти темы почти впервые, так вроде понятно, но надо ещё почитать, порешать задачки, чтобы осознать полностью. Но объяснения очень наглядные, спасибо!!! Буду вас смотреть!!!
качество изображения не очень чёткое, но качество материала оооочень чёткое. Пересматриваю на одном дыхании
тупо лучший! смотришь один его ролик и потом начинаешь сам пробовать, уже с пониманием.
Последний раз я с таким удовольствием смотрел уроки Игоря Борисова из Специалиста по php... Талантливо подаете, Дмитрий.
Вижу Лаврика - ставлю лайк!
Я изучаю JavaScript после Python. Действительно, для понимания единственная сложность - это асинхронность. Видео помогло прояснить некоторые моменты.))
чувак ты просто король обучающих видосов)) хоть я что то из материала и знаю, но все равно выучил совсем недавно, поэтому полезно повторить, попрактиковаться, и закрепить знания, поэтому большое спасибо!
Супер, мне понравился вебинар. Многое для себя уяснил и многое прояснилось.
Спасибо вам большое!все очень понятно!
Хороший вебинар, не знаю почему, но только после него начало приходить понимание про this и области видимости
Ну что тут можно сказать, вижу новые вебинары от Дмитрия, сразу ставлю лике.
Спасибо вам за вебинары
это лучший урок по js ! чувак талант
мб. Так в чем суть замыканий в js?
@@xenm85 замыкания - способность языка создавать приватный контекст. В функционале - где используется работа с валидацией полей это используется
Спасибо, Дмитрий, вы очень круто объясняете - сразу открылись глаза на JS :) и пришло глубинное понимание. Даже пришли мысли, что и где в проектах было сделано неправильно, и как поправить :)
Отличный контент наряду с книгой Симдянова по PHP где собственно тоже берется сразу с основ у вас наиболее адекватная структура и подача материала, спасибо огромное за ваши труды.
Стоит пересмотреть! 👍🏻
Про коллбэки с 1:16:00
сенкс браза
Спасибо! за ними и пришел!))
за этот урок - однозначно подписка
ООООООООО да наконец-то КТО-то это сделал доходчиво и внятно БЛАГОДАРЮ.....
Посмотрел первый раз, поплакал, пошел подучил основы)
Вернулся через неделю, пересмотрел , уже понятно более менее)
Через недельку напишу че за КАЛЛбэки такие и как их простым людям понять)
Господи, только благодаря вам я смог понять что делает this и перестал бояться ООП в языках в целом!
и ты понял в чем суть замыканий и как надо с ними работать? И чем ООП js отличается от классики?
Потрясно! Я наконец познала коллбэки).
И про замыкания я уже поняла, но повторить было оч.полезно.
Хорошо описал сложные вопросы. Очень часто задают такие вопросы на собеседованиях.
Дмитрий кросавчег, всё объясняет четко
Чудесно) спасибо!)
Жизненные примеры очень радуют и способствуют пониманию!
Димон, этот видос крутой, го еще жести и посложнее, чтобы у меня мозг совсем взорвался.Это испытание было пройдено и я всё понял.
Все доступно объяснил, молодец ;)
Единственное что скажу, если не понятно , практиуйтесь и пересматривайте уроки!! И все будет рано или поздно понятно) Я не мог понять до конца что такое контекст , call, apply .. Сейчас смотрю и для меня ето все просто елементарно выглядит)
Терепение, все будет)
один из лучших преподавателей 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
А что по js посоветуешь ?
Все что надо смотреть, ищу с начало у Лаврика.
41:14 - Ещё можно анонимную функцию в onclick и туда items[i].classList.toggle('item-active'), только если в цикле писать не var i, а let i
Спасибо огромное за урок, я всё понял) Материал отличный, покупать курс я, конечно же, не буду) (ибо школьник)
Идеально все обьяснил, спасибо!
Не хватает навигации по стой длинному ролику, пол часа чтобы услышал про замыкание.. а так спасибо большое, весьма информативно.
интересно рассказывает я даже не понял как час прошел и самые нужные темы
Про колбеки бы добавил что их можно вызывать не только в конце, а везде где надо ответвиться от основного кода функции
Да неужели, сколько лет я уже жду корс по javascript от лаврика.
чисто под меня урок, правда я уже знаю что такое замыкания))
так что буду смотреть ехуууу ты топ
Дмитрий красава!
Спасибо, очень полезно!
супер. очень доступно! было бы не плохо про promise такое же выложить!
Смотрю уже не 1 видео от этого автора, Потрясающие вебинары! где ссылка на покупку? Готов купить за миллион. Только слушателей обычно много, отвлекают своими глупыми шутками автора в комментариях.
17 год, я был так молод и горяч
звонок спине)
Вебинар класс. Ссылочку для отзывов в вк тоже добавляй в описание!
Спасибо ! за урок
спасибо за видос конечно. но то, что этот видос создан в качестве приманки на твои курсы, бесит нереально) и заканчиваешь всегда на самом интересном
Браво! Супер!
Как же вы меня запутали с рандомом из доступных элементов 1:06 ...
Никак не мог понять, зачем вы 0 отправляете, если randon всё равно принимает значение нуля. Зачем из length вычитать единицу, а потом в math эту же единицу прибавлять к length.
Как же я тупил. Искал сокральный смысл. Над this так не тупил, над call ещё меньше думал. А тут весь день ходил и думал - "почему, зачем?" . А потом понял, что все мы люди... )
В общем доверяй, но проверяй.
А формула там такая: Math.random() * (max - min) + min;
Не включительно max.
Неправильно, потому что получится Float число, Дмитрий использовал floor(), чтобы округлить вниз, а после добавил 1.
И получается, что все значения рандома от 0 до 1 будут 1
@@user-my3ep8mu8z
Не понял.
Сначала считаем то, что в скобке. В скобках получаем float от Math.random, умножаем на lengh - 0 +1 (в инструкции выше вычитали эту же единицу), а только после этого применяем floor. Floor применяется для того, что бы на выходе получать целые числа, ну и 0 будет чаще выпадать.
Но в любом случае, код не корректный, хоть и работает. С тем же успехом, можно было из length не вычитать ничего и не отправлять 0 в min. Min тогда вообще не нужен был.
Ёкарный бабай. Первый класс вторая четверть.... И чего тут непонятного было 4 года назад? )))
Здравствуйте.
Спасет оборачивание в анонимную немедленно вызываемую функцию (IIFE):
items[i].onclick = function (x){
return activeItem}(i);
Function activeItem(x){
Items[x].classList.toggle(‘item-active’)
}
рекомендовали это видео, чтобы разобраться в данной теме... Все хорошо, все понятно... Но без анонимной функции теряется контекст Дмитрий даже не пытался объяснить.. И так же происходит в куче других видео, книг и статей...А именно это я хотел выкурить.. Это какая загадочная вещь :)
Дмитрий Лаврик, я нашел ошибку в вашем коде. Не 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, ? К сожалению курс начался , когда будет новый поток ?) недавно начала смотреть ваши уроки очень доходчиво объясняете.
кот на 17-й минуте шикарный)
я подумал это человек с длинной рукой
Я при событии вместо this использовал объект event тоже работает 39.09
Добрый день. Спасибо за видео.
Дмитрий, подскажите, 40:50 мы же здесь можем использовать делегирование событий, верно?
Повесить на родительский div событие, и через event.target.closest('div) при клике на конкретный див - будет происходить событие.
Эти два способа по своей сути равнозначны?
Если есть какие-то нюансовые различия ?
Спасибо
czcams.com/video/LM0tW2MZJZ4/video.html Функция mtRand написана не верно. С min=0 работать будет, но с другими значениями нет. Необходимо исправить - return Math.floor(Math.rabdom() * (min - max +1)) + min;
Урок супер
смотрю на х1.25, годно:)
Мне кажется, что правильнее было бы "замыкание" назвать "замкнутость". Тогда яснее смысл.
Zhivago трудно произносить, вот и вся проблема названия 🤭
К чему тогда этот новый термин _"замыкание",_ если есть логичный и старый термин из С/С++ _"область видимости"?!_
замыкание области видимости
czcams.com/video/LM0tW2MZJZ4/video.html
А как же event.target ? До изучения контекста всегда решал подобную задачу event.target или event.currentTarget по ситуации.
Спасибо! Некоторые знания по JS были. Хотел узнать немного о замыкании. Так получилось, что узнал что за кулбэки, и как используються - кажется с этим я хорошо разобрался. А вот с замыканиями - я только понял что они используются для получения каких то переменных (обьектов или значиния) из функции которую интерпретатор в начале запуска проинициализировал, но мы еще не использовали, или уже вышли за границы её видимости. Как то так я понял. Вообщем мутно еще понимаю замыкание. И контекст связаный с замыканием так же плохо зашел. Буду разбираться с этим!)
Можете книжку посоветовать хорошую по JS?
Cool! All understandble
Дмитрий, благодарю за урок.
А вот для таких как я, кто с первого раза ничего не понял.
Обучение JavaScript "this - контекст исполнения функции"
Посмотри и все поймешь --- czcams.com/video/3btM1eujf9s/video.html
хорошо заходит, спасибо
Если я правильно понял, то в примере с таймером в первом случае передается ссылка на функцию ( timer.tick ) и ее уже setInterval вызывает в window. => ошибка.
Во втором случае анонимная функция вызывает метод timer`a, который она видит по замыканию.
Зыс
Хотя бы не "зис".
Дмитрий, а почему вы говорите на 43:00, что только this можно применять и замыкание тут применить невозможно? Это же не так. Через замыкание можно решить данную задачу.
Спасибо!
лайк не глядя
44:30 почему нет? В жизни же коту можно дать ускорение. И как потом дальность полета определить тогда, если параметр ускорение не передаем?
Не знал, что соболев так шарит
почему я переписываю все точь-в-точь как на экране(проверяю все в плоть до каждого символа) и консоль мне дает ошибку
не нужно переписывать, нужно понимания писать
Спасибо
Это было сложно, но я понял)
42:30 items[i] вообще то проходит )