Javascript: мне нужно поместить this.var для каждой переменной в объекте?

В C ++ язык яm наиболее удобно, обычно один объявляет объект следующим образом:

class foo
{
public:
    int bar;
    int getBar() { return bar; }
}

призваниеgetBar() работает нормально (игнорируя тот факт, чтоbar может быть неинициализирован). Переменнаяbar вgetBar() находится в рамках классаfooтак что я нене нужно говоритьthis->bar если мне действительно не нужно прояснить, что ям со ссылкой на класс " bar вместо, скажем, параметра.

Сейчас я'Я пытаюсь начать с ООП в Javascript. Итак, я смотрю, как определить классы и пробую то же самое:

function foo()
{
     this.bar = 0;
     this.getBar = function() { return bar; }
}

И это дает мнеbar is undefined, Изменениеbar вthis.bar Устраняет проблему, но выполнение этого для каждой переменной немного загромождает мой код. Это необходимо для каждой переменной? Так как я могуне могу найти никаких вопросов, касающихся этого, это заставляет меня чувствовать, что яЯ делаю что-то в корне неправильно.

РЕДАКТИРОВАТЬ: Хорошо, так что, из комментариев, что яя понимаю, чтоthis.bar, свойство объекта, ссылается на что-то другое, чемbarлокальная переменная. Может кто-то сказать, почему именно это, с точки зрения объема и объектов, и если естьЕще один способ определить объект, где это нет необходимо?

Ответы на вопрос(6)

Ваш ответ на вопрос