javascript - 为什么Iife在一个简单的示例中不起作用?

标签 javascript iife

我不明白为什么函数表达式调用不起作用并引发错误。

你能跟我解释一下吗?

var a = function (x) {
  alert(x)
}

(function() {
   a(1);
}());

谢谢大家

这项任务比我想象的要容易得多

最佳答案

那是因为JS会将IIFE解析为对该函数的参数调用,所以请使用添加的分号来做到这一点

var a = function (x) {
  alert(x)
};    
(function() {
   a(1);
}());

关于javascript - 为什么Iife在一个简单的示例中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54650106/

相关文章:

javascript - 应用‘主控’范围

javascript - 具有现代 ES6 javascript 类的方法的局部临时变量

javascript - 为什么在这种情况下使用 IIFE?

javascript - 是否可以从 javascript 绑定(bind) Controller

javascript - react : Toggle function in child component not working as expected

javascript - 为什么 [[GetPrototypeOf]] 是 Javascript 代理的不变量?

php - 通过单击网页上的按钮运行/执行 CasperJS 脚本

javascript - 如何在保持相同 API 的同时将此 JavaScript 包装在立即调用的函数表达式 (IIFE) 中?

javascript - 使用命名立即调用函数表达式 (IIFE) 而不是注释

javascript - 私有(private)变量在控制台中可见吗?