Object.create未按预期工作

时间:2013-09-18 10:05:38

标签: javascript

我不确定为什么这段代码不起作用。我正在尝试使用Object.create();代替new

var Car = function() {
   console.log('Car Consctructor');
};

Car.prototype.color = 'red';

var bmw = Object.create(Car);

console.log(bmw.color); //Doesn't log red - ??

2 个答案:

答案 0 :(得分:4)

Car是一个函数,Object.create()需要一个原型。

var bmw = Object.create(Car.prototype);

答案 1 :(得分:0)

您必须将prototype传递给Object.create

var bmw = Object.create(Car.prototype);

参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create