Спасибо за ответ!
Цитата:
|
Это как? Приведите пример. this может ссылаться только на член класса с которым вызван метод f2
|
например, вот:
class C1 {
f1() { console.log(this); console.log("f1"); }
authInfo(response) {
if (response.session) {
if (response.session.user) {
var user = response.session.user;
}
}
this.f1(); // не работает
c1.f1(); // работает
}
}
let c1 = new C1();
VK.Auth.getLoginStatus(c1.authInfo);
здесь или контекст this не передается, если вызывать VK.Auth.getLoginStatus(c1.authInfo);
или аргумент response не передается, если вызывать VK.Auth.getLoginStatus(c1.authInfo());
Цитата:
|
Это совсем не нормально
А если вы строку 6 переделаете
let c2 = new C1();
Что будет обозначать c1 в методе f3?
|
Да, это проблема. Но все-таки вопрос: проблема только в потенциальной угрозе переименования?
А если предположить, что имя класса всегда будет одним и тем же, то других проблем нет с тем чтобы использовать всегда имя класса вместо this?
Или там еще какие-то могут вылезти проблемы?