为什么 function(){}.__proto__ === Function.prototype

function(){}.__proto__ === Function.prototypeFunction.prototype === function(){}.__proto__得到不同的结果

Function.prototype === function(){}.__proto__返回true

function(){}.__proto__ === Function.prototype 返回错误:

VM2053:1 Uncaught SyntaxError: 函数语句需要函数名


犯罪嫌疑人X
浏览 389回答 2
2回答

一只名叫tom的猫

因为函数声明必须有一个名字,而函数表达式则没有。从 wiki 页面上立即调用函数表达式,在行开头的情况下function:当解析器遇到 function 关键字时,它会将其视为函数声明(语句),而不是函数表达式。

aluckdog

(function () {}).__proto__ === Function.prototype 返回真。Function.prototype === (function () {}).__proto__ 也返回真;
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript