Answer
t.me/js_testОтвет:
Rabbit undefined undefined undefined
Обьяснение:
В первом вызове this == rabbit
, во всех остальных this
равен Rabbit.prototype
, так как это объект перед точкой.
Так что только первый вызов выведет Rabbit
, а остальные – undefined.
Код для проверки:
function Rabbit(name) { this.name = name; } Rabbit.prototype.sayHi = function() { console.log(this.name); }; const rabbit = new Rabbit("Rabbit"); rabbit.sayHi(); Rabbit.prototype.sayHi(); Object.getPrototypeOf(rabbit).sayHi(); rabbit.__proto__.sayHi();