Здравствуйте. такой вопрос: почему из скрытого метода потомка нельзя получить доступ к свойству родителя?
<script>
function Machine(power) {
this._enabled = false;
this.enable = function() {
this._enabled = true;
};
this.disable = function() {
this._enabled = false;
};
}
function CoffeeMachine(power) {
Machine.apply(this, arguments);
var waterAmount = 0;
this.setWaterAmount = function(amount) {
waterAmount = amount;
};
function onReady() {
console.log(this._enabled);
if(this._enabled==false){
console.log('ошибка, кофеварка выключена!'+'enable: '+this._enabled);
}
else if(this._enabled==true){
console.log('Кофе готово!'+'enable: '+this._enabled);
}
}
this.run = function() {
console.log(this._enabled);
setTimeout(onReady, 1000);
};
}
var coffeeMachine = new CoffeeMachine(10000);
// coffeeMachine.enable();
coffeeMachine.run();
</script>
через метод onReady нельзя прочитать свойство enabled (выводит undefined) а через метод Run все прекрасно читается