【发布时间】:2018-02-18 04:03:48
【问题描述】:
如果您尝试打印出常规对象的__proto__ 属性,例如{}.__proto__ 或foo.__proto__,您会得到[object object];这个[object object] 是另一个对象的原型。但是,如果您尝试打印出任何函数的__proto__ 属性,它会为您提供function () { [native code] }。这是为什么 ?它不应该返回Function 继承自的对象的原型,它应该是一个对象而不是另一个函数(如function(){native code]})?一个函数的__proto__ 怎么可能是另一个函数而不是一个对象,就像其他原型一样?
*我知道应该使用 Object.getPrototypeOf(obj) 来代替 proto,但我使用了它,因为它更短。
如果有人向我解释上述内容,我也将不胜感激。如果您对我的问题有任何困惑,请在 cmets 中提问,而不是投反对票。
【问题讨论】:
-
如何打印?可能正在进行类型转换...
-
document.write()在这两种情况下。
标签: javascript prototype