我理解Object.prototype。 proto = null是链的末尾(所以说浏览器控制台)。
在MDN网站的Object.prototype页面:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype
在页面底部的“继承:”下,您将看到“功能”,其中包含可扩展属性&下面的方法。根据我的理解,它说Object.prototype继承了Function.prototype.bind()等方法
我可以理解Object构造函数共享非原型属性/方法(例如调用者属性),因为它是由Function构造函数fn构造的。但是当Object.prototype。 proto 为空时,Object.prototype如何从Function.prototype继承?
请有人点光吗?
答案 0 :(得分:1)
它指的是Object
构造函数继承的内容,而不是对象实例。所有构造函数都是函数,因此Object
函数本身继承自Function.prototype
。
当你在页面上看到通知时说:
从Function继承的属性: arity,caller,constructor,length,name
更容易理解其含义 - 它指的是Object.constructor
和Object.length
等属性是如何从Function
继承的。
无论如何,是是的,Object.prototype.__proto__ === null
- Object.prototype根本没有从Function.prototype继承,正如你所想的那样。