Что такое this в ООП javascript

Что такое this в объекте в объектно-ориентированном программировании на javascript

This (зыс зис) в объекте означает только лишь имя самого объекта. То есть вместо this мысленно подставляйте имя объекта, в котором определяете свойства.

This ставится чтобы вы работали именно с той переменной (свойством) которое находится в текущем объекте.

Пример:


var obj = {
 start: true,
 test: function () { if (start== true) {alert ("ok");}
};

 

При вызове функции (метода объекта) obj.test(); мы получим ошибку referenceerror start is not defined так как JS не знает о такой переменной (она не глобальная, она не локальная и она не пришла с функцией). Поэтому чтобы не было ошибки и JS понял что это именно то свойство которое мы уже задали вначале как true, нужно перед ним поставить this:

 


var obj = {
 start: true,
 test: function () { if (this.start == true) {alert ("ok");}
};

 

Теперь интерпретатор javascript знает какое свойство (переменная start) мы хотим проверить в условии. Вместо this вы мысленно подставляете название объекта, например obj.start, но чтобы не вспоминать как мы назвали объект, просто ставим this. Если его нет, то javascript сначала будет проверять есть ли такая глобальная переменная, затем локальная и последнее как не пришедший ли параметр функции.



Оставить свой ответ:

Имя:*
E-Mail:
Вопрос:
Skolko buдет пять пдюс сeмь?
Ответ:*
QQpedia21.ru - cамые интересные вопросы