createCounter()
counter = -10
и в связке с ним экземпляр функции myFunction
– он попадает в переменную z
z()
имеем дело с отдельным экземпляром функции, которая, к тому же, тащит с собой окружение, в котором лежит свой счетчик counter
.const a = createCounter();
const b = createCounter();
a(); a(); a(); // -9, -8, -7
b(); b(); // -9, -8
a(); -6
а и b — сами по себе, независимы. animal
будет метод _eat()
А кролег определит метод eat() внутри которого вызывает this._eat() super
внутри свойства-функции?super
, а к __proto__
, как вариант:let rabbit = {
__proto__: animal,
eat: function() {
this.__proto__.eat('carrot');
}
}
rabbit.eat(); // "eats carrot"