Показать сообщение отдельно
  #2 (permalink)  
Старый 15.09.2020, 16:51
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,744

Сообщение от igogo333
Вопрос: надо ли использовать всегда this.f1(); или можно всегда использовать c1.f1() ?
Функции (методы класса) вызываются с членом класса.
После c1 = new C1() разумеется надо вызывать c1.f1()
this указывает на текущий член класса внутри методов этого класса.
Если Вы вызвали c1.f2(), то внутри f2 this будет ссылаться на c1.
Внутри метода класса обратиться к текущему члену класса (с которым был вызван метод можно только через this.

Сообщение от igogo333
Дело в том, что иногда функция f2 вызывается в таком контексте, что this ссылается просто в никуда
Это как? Приведите пример. this может ссылаться только на член класса с которым вызван метод f2
Сообщение от igogo333
А вот f3 вызывается в любом контексте нормально.
Это совсем не нормально
А если вы строку 6 переделаете
let c2 = new C1();
Что будет обозначать c1 в методе f3?
Ответить с цитированием