Александр, теска, как всегда супер. Сам много чего учил по его видео, рекомендую! просто дополню чуть, вдруг кому на самом деле будет интересно как оно из коробки работает.))) сам js, он имеет лексическую область видимости, а this был создан, чтоб воссоздать то, что будет иметь динамическую область видимости! this, это не игрушка! перед тем как это использовать, сто раз подумайте - "а надо ли нам тут динамическая область видимости?". вообще, лучше изучите область видимости js, перед тем как писать код на проф уровне! просто var к примеру, это не устаревшая система переменных! это опять же инструмент, который работает в функциональной области видимости. а let, это блочная область видимости! а const надо использовать, когда у вас переменная не изменяема, в примере Александра, обращение к элементу дома, логичнее писать через const! ну а let на деле выглядит вот так { let a = 2; print(a);} это блочная область видимости, вот так ее правильно используют. за пределами фигурных скобок, переменная a = 2 не видна! вот для этого и создали let, чтоб не плодить глобальные переменные. для остального используется var. к примеру в цикле for если вы напишите let i = 0; а не var i = 0; , при каждой итерации цикла, будет создаваться переменная let i = значение, это все будет создаваться в памяти, а не перезаписываться i = 0! а в случаи с var, перезаписывается значение var. вы никогда не сможете писать замыкания, если не поймете как работает область видимости в js! this используйте только тогда, когда вам реально необходимо поменять глобальную область с лексической на динамическую! иначе, попадете на кучу багов и вздернитесь исправлять их.))) надеюсь кому-то будет полезным!)) сложного в этом, вообще нет ничего!))) есть еще такое как правосторонний поиск, и левосторонний. правый всегда будет выдавать вам undefined, когда вы понимаете это, дебажить код, одна радость.)))
Очень круто, что видео живое. Когда видишь, что и опытный программист может опечататься и чуть потупить, это поддерживает. Ну, и интрига, коллизии сюжета))) Прям затаив дыхание - в чём же дело, почему событие не событие?..
Большое спасибо за простое объяснение "на пальцах",без сложных формулировок👍👍👍 просмотрел кучу видео на Ютубе, у всех как под копирку непонятное на непонятном языке🤦♂️
В описании при переходе по ссылке в ооп js переходит в js 2.0, так, чтобы знали. Огромное спасибо за уроки, очень полезно. Приятный голос и доходчиво объясняете
ЭТО как раз то что я искал! Спасибо! Очень интересует информация начет елементов DOM и в чем отличие NODE list, HTML collection , etc.... Возможно у Вас уже есть видео на данную тему?
Ошибка в отсутствии All в конце querySelector, код сработал бы с querySelectorAll. Только учусь, но приятно что УЖЕ вижу ошибки. Всем успехов, js классный
Это вероятно что то очень страшное и странное , это зЫс, уууу бойтесь если вы зашли посмотреть это видео) Это же просто this , ау, что вообще не ясно или не понятно , стоит просто немного посидеть с объектами и все будет очень ясно и доступно) 😊 😁 Да можно сказать про функции объекты классы прототипы , но для начало , это как бы все объекты, даже у функции есть методы которые являются объектом, хотя почему даже , как бы есть, нужно просто оценить все более внимательно ) по этой причине я не буду говорить о сложных вещах , а просто объекты 😊
Офигеть, когда не читаешь в какой-то книжке с примерами, а смотришь видео с объяснениями от человека, который не только знает, но и любит, что делает, то сразу становится всё настолько понятно, что начинаешь думать:"Как я сам не догадался? Это же такой примитив!"
Было бы полезно сказать, почему именно this в контексте функции является объектом window. Потому что abc() фактически равно window.abc(). Но я из видео ничерта не понял, если честно. Либо это неполное объяснение и где-то есть продолжение...
Я когда читал learn JS,но не понял, что значит вызов this через точку? Там какие-то переносы идут и он теряется из-за этого и выдаёт ошибку...ссылочный тип this,так называется пункт. Я пишу с недавнего времени log +tab, чтобы не набирать каждый раз одно и то же, может кому-то пригодится,кто не знал. Спасибо за урок! JS, this, it's simple.
Александр, спасибо. Подсел на Ваши уроки после первого же просмотра, жаль пока больше смотрю (мало практики). А можно в двух словах(строчках кода) как по повторному клику возвращать параграфу первоначальный цвет и так по кругу. Заранее благодарен.
Всем привет! Правильно ли я понимаю, что this не может ссылаться на функцию, внутри которой находится? Если да, то почему , ведь функция является обьектом в JS?
И руководствуясь принципом наименьшей неожиданности лучше всегда использовать addEventListener. Это и в правду так. Стоит также добавить, что если вначале странице будет стоять 'use strict', то this в консоли вернет не window, а undefind. Опять же исходя из того же вышеуказанного принципа будет легче управлять поведением.
Подскажите, если вызвать код let p = document.querySelector('p'); const f = ()=>{ console.log(this) return this.style.background = 'red'; } p.onclick = f; то, как сделать так, что бы this ссылался не на window,а на p
Это суждение не совсем верно, this динамичен. Это не свойства this, это свойства объекта на который он указывает, в данном случае window. Если он укажет на другой объект то свойства могут быть другими.
без скобок не вызывается функция, а передается ссылка на саму функцию, чтобы она вызывалась по событию, никто не знает когда совершится допустим клик, а скобки означают немедленный вызов... чтобы было наглядней, можно не передавать ссылку на функцию, а завернуть её вызов в анонимную функцию, а саму анонимную функцию бросить на событие
Спасибо за ролик. Похвалюсь, смотрел внимательно, и сразу понял где ошибка и когда 'red' без кавычек и когда "не срабатывала" функция. Это потому что мысленно писал код вместе с Александром. У вас очень хорошие курсы.
это же не комедийный сериал, главное как обьясняется тема...да и сам голос у него не скучный, я не знаю, вам надо наверное чтобы Лига Смеха программирование преподавала
Автор видео: "Консоль лох"
Консоль: "Ачё всмысле..."
ахахах убило)))
😎
Александр, теска, как всегда супер. Сам много чего учил по его видео, рекомендую!
просто дополню чуть, вдруг кому на самом деле будет интересно как оно из коробки работает.)))
сам js, он имеет лексическую область видимости, а this был создан, чтоб воссоздать то, что будет иметь динамическую область видимости! this, это не игрушка! перед тем как это использовать, сто раз подумайте - "а надо ли нам тут динамическая область видимости?". вообще, лучше изучите область видимости js, перед тем как писать код на проф уровне! просто var к примеру, это не устаревшая система переменных! это опять же инструмент, который работает в функциональной области видимости. а let, это блочная область видимости! а const надо использовать, когда у вас переменная не изменяема, в примере Александра, обращение к элементу дома, логичнее писать через const! ну а let на деле выглядит вот так { let a = 2; print(a);} это блочная область видимости, вот так ее правильно используют. за пределами фигурных скобок, переменная a = 2 не видна! вот для этого и создали let, чтоб не плодить глобальные переменные. для остального используется var. к примеру в цикле for если вы напишите let i = 0; а не var i = 0; , при каждой итерации цикла, будет создаваться переменная let i = значение, это все будет создаваться в памяти, а не перезаписываться i = 0! а в случаи с var, перезаписывается значение var. вы никогда не сможете писать замыкания, если не поймете как работает область видимости в js! this используйте только тогда, когда вам реально необходимо поменять глобальную область с лексической на динамическую! иначе, попадете на кучу багов и вздернитесь исправлять их.))) надеюсь кому-то будет полезным!)) сложного в этом, вообще нет ничего!))) есть еще такое как правосторонний поиск, и левосторонний. правый всегда будет выдавать вам undefined, когда вы понимаете это, дебажить код, одна радость.)))
Очень круто, что видео живое. Когда видишь, что и опытный программист может опечататься и чуть потупить, это поддерживает.
Ну, и интрига, коллизии сюжета))) Прям затаив дыхание - в чём же дело, почему событие не событие?..
Самые толковые уроки! Разжёвано замечательно!
спасибо!
спасибо большое за видео! теперь все наконец стало понятно, где это применяется и как это использовать!
Невероятно доступная подача информации. Большое спасибо!
Полезно, понятно. Автору успехов!
Большое спасибо за простое объяснение "на пальцах",без сложных формулировок👍👍👍 просмотрел кучу видео на Ютубе, у всех как под копирку непонятное на непонятном языке🤦♂️
В описании при переходе по ссылке в ооп js переходит в js 2.0, так, чтобы знали. Огромное спасибо за уроки, очень полезно. Приятный голос и доходчиво объясняете
Спасибо! Очень доступно объясняете
как раз новичок, и конечно же, this было непонятным. Спасибо за Ваши видео!)
рад!
Полезно. Спасибо. Будет продолжение ООП в JavaScript? У Вас талант правильно объяснить. Очень жду Node JS...
ЭТО как раз то что я искал! Спасибо! Очень интересует информация начет елементов DOM и в чем отличие NODE list, HTML collection , etc.... Возможно у Вас уже есть видео на данную тему?
очень достаточно,,Спасибо вам 🖐👍💚
Дякую за відео, болюча тема для мене
Отличное разъяснение.
спасибо за урок
Ошибка в отсутствии All в конце querySelector, код сработал бы с querySelectorAll. Только учусь, но приятно что УЖЕ вижу ошибки. Всем успехов, js классный
Алекс, спасибо за хорошее объяснение!
Это вероятно что то очень страшное и странное , это зЫс, уууу бойтесь если вы зашли посмотреть это видео)
Это же просто this , ау, что вообще не ясно или не понятно , стоит просто немного посидеть с объектами и все будет очень ясно и доступно) 😊 😁
Да можно сказать про функции объекты классы прототипы , но для начало , это как бы все объекты, даже у функции есть методы которые являются объектом, хотя почему даже , как бы есть, нужно просто оценить все более внимательно ) по этой причине я не буду говорить о сложных вещах , а просто объекты 😊
Дякую за це пояснення! Лайк.
Большое спасибо за видео
Офигеть, когда не читаешь в какой-то книжке с примерами, а смотришь видео с объяснениями от человека, который не только знает, но и любит, что делает, то сразу становится всё настолько понятно, что начинаешь думать:"Как я сам не догадался? Это же такой примитив!"
да прибудет с нами "ЗЫС")
спасибо за контент!
Было бы полезно сказать, почему именно this в контексте функции является объектом window. Потому что abc() фактически равно window.abc().
Но я из видео ничерта не понял, если честно. Либо это неполное объяснение и где-то есть продолжение...
Спасибо интересно, надо будет сделать лабораторную работу на эту тему с более глубокой проработкой
Тема this раскрыта не полностью
Я когда читал learn JS,но не понял, что значит вызов this через точку? Там какие-то переносы идут и он теряется из-за этого и выдаёт ошибку...ссылочный тип this,так называется пункт.
Я пишу с недавнего времени log +tab, чтобы не набирать каждый раз одно и то же, может кому-то пригодится,кто не знал.
Спасибо за урок!
JS, this, it's simple.
Спасибо !!
Александр, спасибо. Подсел на Ваши уроки после первого же просмотра, жаль пока больше смотрю (мало практики). А можно в двух словах(строчках кода) как по повторному клику возвращать параграфу первоначальный цвет и так по кругу. Заранее благодарен.
classList.toggle
@@itgid Спасибо, теперь хоть знаю куда копать)
Всем привет! Правильно ли я понимаю, что this не может ссылаться на функцию, внутри которой находится? Если да, то почему , ведь функция является обьектом в JS?
Какая у вас тема в vs code?
addEventListener может навесить несколько обработчиков событий на элемент, а onclick перезапишет
И руководствуясь принципом наименьшей неожиданности лучше всегда использовать addEventListener. Это и в правду так.
Стоит также добавить, что если вначале странице будет стоять 'use strict', то this в консоли вернет не window, а undefind. Опять же исходя из того же вышеуказанного принципа будет легче управлять поведением.
Как быть с globalThis?
Очень полезно) Постарайтесь в следующий раз увеличить размер шрифта на программе (vs code)
Подскажите, если вызвать код
let p = document.querySelector('p');
const f = ()=>{
console.log(this)
return this.style.background = 'red';
}
p.onclick = f;
то, как сделать так, что бы this ссылался не на window,а на p
по моему, в данном случае, const f не может быть стрелочной функцией. Только function declaration
Ого! Я незнал что this имеет так много свойств. Это для меня открытие огромное
Это суждение не совсем верно, this динамичен. Это не свойства this, это свойства объекта на который он указывает, в данном случае window. Если он укажет на другой объект то свойства могут быть другими.
Просто так document.querySelector не работает - его нужно вставлять в функцию запуска на странице - window.onload = function(){ ... };
Здравствуйте, у меня вопрос почему вы вызвали функцию abc без скобок
без скобок не вызывается функция, а передается ссылка на саму функцию, чтобы она вызывалась по событию, никто не знает когда совершится допустим клик, а скобки означают немедленный вызов... чтобы было наглядней, можно не передавать ссылку на функцию, а завернуть её вызов в анонимную функцию, а саму анонимную функцию бросить на событие
Спасибо за ролик. Похвалюсь, смотрел внимательно, и сразу понял где ошибка и когда 'red' без кавычек и когда "не срабатывала" функция. Это потому что мысленно писал код вместе с Александром. У вас очень хорошие курсы.
Спасибо за урок. Единственное, как будто не хватает работы this со стрелочными функциями
в стрелочных функциях нет this
Всё равно не понял. Можно пожалуйста в двух словах сказать на что указывает this? На окружающий его объект?
то есть внутри того объекта на котором он находится?
а если вызвать this без контекста, но в строгом режиме? тогда this будет равно undefined?
Да
Спасибо
👨💻💪🚀😎 четко
у меня напрямую работает document.querySelectorAll('p').addEventListener('click', abc); через ALL
Да ты что. Правда чтоли?)
«консоль лох»
дебаг только алертами!
Консоле лог!
Учитель сам завис 10:48
2ва приклади і ті тіки через івенти.
я хотівби більше прикладів без використання DOM
конечно не бойтесь, this это атавизм современных фреймворков)))
Очень интересно, но ничего не понятно, надо это js сначала изучать
Я Умар Искендер ты здесь
Не хватило самой нужной информации.. ООП, стрелочные функции
+
Почему консоль лох ? 5:10
ахахахаххахаха
Потому что человек из Украины. Многие ''г'' так произносят.
по прежнему ничего не понятно, спасибо -_-
спасибо за видео но ты громко пыхтишь
Не обманывай я не боюсь тхис
Я боюсь перемен в России
ну судя по имени - тхис это действительно что-то плохое.
@@itgid я имею ввиду this
@@БольшойОтец-з2ы та то он так шутит специфично. Ему уже лет 50, не требуй много)
@@БорисБритва-т8р Американская пропаганда поглатила тебя через купленный трампом ВКонтакте
Спасибо за видео. Но ПОЖАЛУЙСТА НЕ ПРОИЗНОСИТЕ «ЗЫС»!!! Просто кровь из ушей идет. В крайнем случае, говорите «ВИС»....
если на то пошло, то корректнее уже произнести «ДИС»
Как же бесит твоё дыхание в микрофон, а в остальном спасибо за урок
Скучно, монотонно. Если у Вас и курсы такие то мне жаль учеников.
это же не комедийный сериал, главное как обьясняется тема...да и сам голос у него не скучный, я не знаю, вам надо наверное чтобы Лига Смеха программирование преподавала
До меня всё дошло - это главное. Сюда не веселится приходят.
Алекс, спасибо за хорошее объяснение! 👍🏻
Спасибо!