Function.prototype是什么?

  • 下面这行代码运行结果为什么会是 fuction(){}?这是什么?

    console.log(Function.prototype);
        
阅读 13.7k
4 个回答

一个构造函数的prototype属性,就是这个构造函数制造(即new)的实例的原型对象。

具体到Function.prototype,就是所有函数的原型,因为通常函数都可以认为是通过new Function制造出来的。换句话说,Function.prototype上面承载了用于继承给所有函数的那些属性,例如:call、bind、apply等。

clipboard.png

这张图能解决所有prototype疑惑。至于console.log打印出来什么东西,不必纠结,和它具体实现有关。

空函数,Function.prototype.__proto__是空对象

Function.prototype.__proto__ === Object.prototype 
console.log(Function.prototype) == fuction(){}
fuction(){} 可以看成对象Object的实例
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题