У меня есть объект, который наследуется от другого.В дочернем объекте я инициализирую некоторые переменные экземпляра.В родительском объекте у меня есть метод, который вызывает частные функции, которые используют эти переменные экземпляра.
function objA() {
this.funcA = function() {
alert(this.var);
funcB();
};
function funcB() {
alert(this.var);
};
}
objB.prototype = new objA();
objB.prototype.constructor = objB;
function objB() {
this.var ="hello";
this.funcA();
}
первое предупреждение дает «привет», второе неопределенное ...
I константачто «this» в javascript - это идентификатор объекта, вызывающего функцию, а не сам экземпляр ... Я предполагаю, что при вызове funcB я нахожусь в каком-то родительском контексте, где переменная не существует ...
Я чистый новичок в javascript, и я не могу понять, как это решить.Конечно, я мог бы передать это как вспомогательное средство, но это не очень ООП, и в моем проекте есть намного больше переменных, чтобы сделать доступными ...
Спасибо