首页 > 解决方案 > 对象不继承属性和值

问题描述

我已经定义了一个对象,当我实例化它时,实例不包含父对象的属性和值。

const myObject = {
    myNumbers: [7,32,51,2,0,9],
    myName: "John",
    myLastName: undefined,
    age: 26
};

const objectInstance = Object.create(myObject);

console.log(myObject);          //{myNumbers: Array(6), myName: "John", myLastName: undefined, age: 26}
console.log(objectInstance);    //{}

objectInstance 记录一个空对象。我期待看到日志窗口中显示的所有属性和值。我哪里错了?

标签: javascript

解决方案


当你console.log一个对象时,它只显示对象自身的属性。但是,如果您想查看继承的属性,可以__proto__在控制台中展开该属性。

尝试记录:

console.log(myObject);                               // {myNumbers: Array(6), myName: "John", myLastName: undefined, age: 26}
console.log(objectInstance);                         // {}
console.log(Object.getPrototypeOf(objectInstance));  // {myNumbers: Array(6), myName: "John", myLastName: undefined, age: 26}

推荐阅读