首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Javascript中调用匿名函数之前,为什么需要在括号中包装匿名函数?

在Javascript中调用匿名函数之前,为什么需要在括号中包装匿名函数?
EN

Stack Overflow用户
提问于 2011-12-20 23:06:27
回答 1查看 829关注 0票数 1

可能重复:

Why this kind of function invocation is wrong in JavaScript?

Is there any reason to wrap anonymous JavaScript functions in braces?

是否有一个很好的解释,为什么我必须将一个匿名函数封装在括号中,然后才能调用它,如:

代码语言:javascript
运行
复制
(function() { alert('foo'); })();

而不是仅仅

代码语言:javascript
运行
复制
function() { alert('foo'); }();

在其他语言中,函数只是您可以传递的东西,例如Clojure。在Clojure中,函数调用如下所示:(函数args),例如:(+ 12)。您可以在通常使用命名函数的任何地方替换匿名函数:((fn,a b) 12)。在Javascript中,情况似乎并非如此。

EN

回答 1

Stack Overflow用户

发布于 2011-12-20 23:10:10

因为如果没有函数的括号,代码就是一个糟糕的函数声明,将()添加到它的末尾是语法错误。

但是,在函数周围加上括号,您将得到一个指向匿名函数的函数指针,该函数可以通过将()添加到函数的末尾来执行。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8583145

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档