我是一个刚接触 JavaScript 的初学者,但我有深入的 C#、Java、C++ 等面向对象编程语言的背景......在 JavaScript 中有一个叫做匿名函数的概念。以下是一段示例代码:
( function() {
for(var x = 0;x<5;x++) {
console.log(x);
}
})();
我理解到末尾的括号是让函数调用自身。还有另一种语法也可以实现相同的功能:
var x = function() {
for(var x = 0;x<5;x++) {
console.log(x);
}
}();
但是现在如果我尝试使用x
,它不会再次执行该函数。那么第二个版本中使用赋值的目标是什么?我能再次通过x
使用该函数吗?
()
,它会立即调用该函数并分配其返回值(在您的情况下为 undefined)。移除()
并且如果您想要立即调用它,请在下一行进行调用,例如:x();
。 - Rajeshvar x =
的实际上是一个IIFE https://dev59.com/QGsy5IYBdhLWcg3w6yUN - Niladriundefined
。 - Jaromanda X