Answer
t.me/js_testОтвет:
Этот код выведет xyz
.
Объяснение:
Свойство company
является не свойством объекта emp1
, а свойством его прототипа. Оператор delete
не удаляет свойства прототипов объектов. У объекта emp1
нет собственного свойства company
. Проверить это можно так:
console.log(emp1.hasOwnProperty('company')); // false
Если нам всё же необходимо удалить это свойство — сделать это можно, либо напрямую обратившись к объекту Employee
(delete Employee.company
), либо — обратившись к прототипу объекта emp1
, воспользовавшись его свойством __proto__
(delete emp1.__proto__.company
).
Код для проверки:
var Employee = { company: 'xyz' } var emp1 = Object.create(Employee); delete emp1.company console.log(emp1.company);