只是为了正确使用术语,在此示例中:
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
“使用指定的原型(prototype)对象和属性创建一个新对象”。相关文章:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/create
我认为“实例”是错误的术语,因为您没有以经典的继承方式实现该对象。要创建新实例,您需要在定义中使用 new
关键字。 MDN 文章对此进行了很好的解释。
关于javascript - Object.create 是否创建对象文字的实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33497548/