首页 > 解决方案 > 为什么立即调用的函数表达式中的函数不需要名称?

问题描述

下面的代码给出了以下错误: VM502:1 Uncaught SyntaxError:函数语句需要函数名 ,我认为它不起作用,因为根据错误消息,函数声明需要函数名。

function (){
var a = 'dog';
console.log(a);
}

下面的第二个代码不会产生错误,而是给出“dog”,因为它不是函数声明,而是立即调用的函数表达式......

(function(){
var a ='dog';
console.log(a);
})()

为什么 iife 中的函数不需要名称?

标签: javascriptiife

解决方案


推荐阅读