JS中所有函数的原型都是Function.prototype,所有对象原型链的终点指向Object.prototype,这句话对吗?

应该怎么理解?... 应该怎么理解? 展开
 我来答
匿名用户
推荐于2017-11-23
展开全部

  1. js中的函数也是对象 (即 (function(){}) instanceof Object == true)

  2. 所有的对象都有自己的构筑函数

  3. 所有的函数都能当作构筑函数, 每个函数都有一个prototype属性

  4. 每个对象都有一个隐藏的o.__proto__属性指向它的构筑函数的prototype

  5. 于是所有的函数的原型都是Function.prototype (即 (function(){}).__proto__ === Function.prototype)

  6. 访问一个对象的属性时, 如果从这个对象里找不到, 就从obj.__proto__里找, 再找不到就继续从obj.__proto__.__proto__里找, 最终会到达Object.prototype

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式