原型 - 对象文字和函数,wrt Douglas Crockford的JavaScript:The Good Parts

时间:2013-09-08 22:26:30

标签: javascript function object prototype

我正在通过道格拉斯·克罗克福德的 JavaScript:好的部分工作,我在第4章“功能”中遇到了一些我不太理解的东西。

在本章开头附近:

  

功能对象

     

JavaScript中的函数是对象。对象是具有到a的隐藏链接的名称/值对的集合   原型对象。 从对象文字生成的对象是链接的   到Object.prototype。函数对象链接到   Function.prototype (它本身链接到Object.prototype)。

在我尝试这个之前,这似乎很简单:

console.log({}.prototype); // => undefined, ???
console.log({key: 'val'}.prototype); // => undefined
console.log(Object.prototype); // => [object Object]
console.log(function(){}.prototype); // => [object Object]
console.log(Function.prototype); // => function Empty() {}
console.log(function(){}.prototype === Function.prototype); // => false
console.log(function(){}.prototype === Object.prototype); // => false

根据摘录,有人可以解释这个吗?根据我读到的内容,对象文字应该有原型,它们应该以某种方式链接到Object.prototype。另外,不应该在function(){}。原型和Function.prototype之间有一些联系吗? Function.prototype和Object.prototype之间的联系是什么?

0 个答案:

没有答案