Я пришел к коду, содержащему эти строки
var data = function() {
function Metadata() { /*some initialization here*/ }
Metadata.prototype = Object.create(Backend.prototype);
Metadata.prototype.constructor = Metadata;
return Metadata;
}
Я пытаюсь понять, что происходит на самом деле, и как использовать возвращаемый объект. Если я правильно понял, data
теперь будет объектом, который должен быть инициализирован следующим образом
var d = new data()
Но я не понимаю следующие строки и почему Object.create()
используется вместо ключевого слова new
:
Metadata.prototype = Object.create(Backend.prototype);
Metadata.prototype.constructor = Metadata;
Что они делают? Нужны ли они? И в чем разница между Object.create
и new
?