self = this в JavaScript
Постараюсь дать простое объяснение (без всяких асинхронных функций), когда конструкция self = this применяется в JavaScript. Создадим объект, в котором определены поле a = 2, b = 3 и функция fn, которая выводит в консоль поле a данного объекта при помощи ключевого слова this. В консоли мы ожидаемо получаем поле a объекта myObj, то есть 2. var myObj = { a : 2, b : 3, fn : function(){ console.log(this.a) // 2 } } myObj.fn() Но если внутрь функции fn вложить ещё одну функцию и в ней в консоль попытаться вывести поле b объекта myObj, мы получим в этом случае undefined...
Что такое THIS в javascript, или как понять объект из контекста
Народ, всем привет. Сегодня вкратце и простыми словами я попробую объяснить тем, кто активно изучает JavaScript и хочет разобраться во всех его аспектах, что такое this и в каких случаях его лучше применять. Сам по себе JS просто необходим при написании хороших динамических сайтов. Хотя на практике, я по секрету скажу, довольно редко использую this в своей работе, но понимание того, что это и с чем его едят будет довольно полезно. Особенно при работе с объектами. Ведь по своей сути this это ничто иное, как ссылка на какой-то текущий объект, понятный из контекста...