我在想“立即调用函数表达式”这个名字可能不正确,因为实际上我们所做的是调用一个匿名函数声明,所以正确的名称可能是IIFD(立即调用函数表达式)调用的函数声明)。
你觉得怎么样?有道理吗?
// function declaration
function add( a, b ) {
return a + b;
}
// function expression
var multiply = function( a, b ) {
return a * b;
}
最佳答案
没有。
函数声明是以关键字function
开头的语句。在任何其他地方使用关键字 function
时,它都会定义一个函数表达式。 IIFE 类似于 (function() {})()
,因此语句以 (
开头,而不是 function
,因此它是一个函数表达式.
关于javascript - IIFE 模式命名不正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30215707/