javascript - 为什么自动执行匿名会有效?

标签 javascript function self-executing-function

我了解自动执行匿名组织。通常我们将它们创建为

(function(){ return 1;})()

原因 - 如果我们使用解析器功能则无法运行

function(){ return 1}()

但是今天我发现下一个代码也可以工作(检查括号顺序)

(function(){ return 1;}())

function(){ return 1; }()仍然给我 SyntaxError,因为它应该

请解释一下为什么?谢谢引用以获取更多详细信息

附注问题是关于(function(){ return 1;}())变体!

最佳答案

(function() {})()

(function() {}())

是等价的。

要调用第二个示例,您可以在函数之前包含 + 运算符

+function(){ return 1 }()

参见Immediately-Invoked Function Expression (IIFE)

关于javascript - 为什么自动执行匿名会有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37256619/

相关文章:

javascript - 修改自执行函数中的参数

php - 破译一个函数

Javascript 范围 : code block vs a code block with a self executing function cacoon

javascript - Javascript对象、属性和变量有什​​么区别,它们都是一样的吗?

Javascript - 如何识别圆弧的碰撞

function - 如何将函数指定为 Scala 中函数的返回类型

r - 如何查看函数内部的函数的作用?

javascript - 从事件监听器调用自执行函数

javascript - 如何在 javascript 中使用小数?

javascript - 为什么在删除之前使用点符号检查属性比直接删除属性更快?