Object.create是否创建对象文字的实例

Does Object.create create an instance of an object literal?

本文关键字:实例 文字 创建对象 create 是否 Object      更新时间:2023-09-26

为了正确使用术语,在本例中:

var Cat = {
    food: 'meat',
    eat: function(){
        console.log(this.food);
    }
};

bob = Object.create(Cat);
bob.food = 'milk';
jim = Object.create(Cat);
jim.food = 'water';
bob.eat();
jim.eat();

你能说Object.create正在创建一个Cat对象文字的实例吗?

Object.create"使用指定的原型对象和属性创建一个新对象"。相关文章:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/create

我认为"实例"这个词是错误的,因为您没有以经典的继承方式实现对象。要创建一个新实例,您需要在定义中使用new关键字。MDN的文章很好地解释了这一点。