在开发人员控制台(Mozilla、Chrome、nvm)中,此代码按预期工作:
var proto = {x: 3};
var obj = Object.create(proto);
所以 obj
将是 {x: 3}
但在 node.js 中我得到了 {}
为什么?
最佳答案
一切正常。但是,对象 {x:3}
是原型(prototype) obj
。当 Node 打印出对象时,它只打印它自己的属性。 x
是原型(prototype)属性。试试吧!
var proto = {x: 3};
var obj = Object.create(proto);
alert(obj.x) // 3
(是的,我知道这是一个浏览器,但它是相同的 JavaScript。:))
阅读更多:Object.create()
关于javascript - 为什么 Object.create 在 node.js 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26159240/