Каким образом в этом случае создается объект?

Здесь в объекте prototype больше нет свойства constructor — там пустой объект. Однако, несмотря на это, каким-то образом эта строка new obj.constructor все же создает пустой объект. Как?

function Constructor() { 
    this.name = 'Kira';
    this.age = 35;
    this.city = 'New-York';
}; 
Constructor.prototype = {}; //теперь prototype содержит пустой объект

let obj = new Constructor;
let obj2 = new obj.constructor;
console.log(obj2); //{}

Тут тоже создается объект. В консоли браузера Chrome он отображается как String, здесь — немного по-другому.

введите сюда описание изображения

function User(name) {
  this.name = name;
}
User.prototype = {};

let user = new User('John');
let user2 = new user.constructor('Pete');

console.log(user2);

Как в этих двух случаях происходит создание объекта?


Ответы (0 шт):