【发布时间】:2015-07-31 18:53:03
【问题描述】:
我尝试了以下代码sn-p:
var man = new Object();
man = {sex : 'male'}
var child = new Object(man);
child.firstName = 'foo'
child.lastName = 'bar'
Object.getPrototypeOf(child);
这将返回 Object {},而我希望它返回与 man 关联的对象。不过这个sn-p:
var man = Object.create(null);
man = {sex : 'male'}
var child = Object.create(man);
child.firstName = 'foo'
child.lastName = 'bar'
Object.getPrototypeOf(child);
它确实返回与 man 关联的对象。从概念上讲,我哪里错了?
【问题讨论】:
-
这有什么问题?
-
var man = new Object();不会为您做任何事情;之后立即用对象文字替换该值。就像你做var man = { sex: 'male' };
标签: javascript object prototypal-inheritance prototype-programming