在为一些同事编写 javascript 课程时,我偶然发现了自调用函数的另一种语法。有谁知道它,有一些细节吗?我无法找到有关它的文档。
CODE:经典语法
(function(){
console.log("I'm self-invoked!");
})();
替代语法
(function(){
console.log("Me too!");
}());
感谢您的提示!
在为一些同事编写 javascript 课程时,我偶然发现了自调用函数的另一种语法。有谁知道它,有一些细节吗?我无法找到有关它的文档。
CODE:经典语法
(function(){
console.log("I'm self-invoked!");
})();
替代语法
(function(){
console.log("Me too!");
}());
感谢您的提示!
两者含义相同。
在两者中,(
开头的符号表示表达式的开头。这表明我们打算调用的函数表达式的开始。最后我们调用它。差异是微妙的,根本不重要,让我们来探索一下:
(function(){
console.log("I'm self-invoked!");
})();
在这里,(
是告诉编译器它是表达式的开始,编译器评估表达式(在这种情况下是函数表达式)然后调用它(在表达式之外)。
(function(){
console.log("Me too!");
}());
这里 - 调用模式 ( ()
) 是该表达式的一部分。