问题标签 [anonymous-function]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2571 浏览

lambda - lambda 函数的类型是什么?

在 C++0x 中,我想知道 lambda 函数的类型是什么。具体来说:

我需要用什么替换 type1/type2 才能使上述内容正常工作?希望您能看到我要完成的工作,因此即使直接替换 type1 和 type2 无法做到这一点,也许您可​​以引导我朝着正确的方向前进。

换句话说:

  • 如何让函数返回匿名函数?
  • 如何将匿名函数分配给变量?

谢谢!

编辑:我正在使用 Visual Studio 2010 进行编译

0 投票
2 回答
3299 浏览

javascript - javascript匿名函数作用域

我有以下匿名函数:

我需要从这个匿名函数调用外部函数并将它的指针传递给调用函数 f1 和 f2。但我不能这样做,因为它指的是窗口对象而不是内部范围。

我可以将功能设置为:

但这是个坏主意,因为它们将在全球空间中......

如何将匿名空间传递给外部函数?

0 投票
1 回答
3038 浏览

scala - Scala:如何定义带有可变参数列表的匿名函数?

在 Scala 中,如何定义一个接受可变数量参数的匿名函数?

0 投票
2 回答
7806 浏览

php - 带有 array_walk 的 PHP 匿名函数

我正在尝试将 array_walk 与匿名函数一起使用,但我总是收到错误消息

周围的文件语法是正确的。有什么想法吗?

0 投票
2 回答
205 浏览

javascript - 如何让这个匿名 Javascript 函数引用正确的变量?

例子:

当我调用 o3 时,它总是会在控制台上显示 5,即使我调用了 o0、o4 或其中任何一个。它将始终显示 5 因为这是我拥有的最后一个值。当创建匿名函数时,如何让它显示 i 的值?如 o3 应在控制台中显示 3 。

0 投票
4 回答
1185 浏览

c# - 将数组内联转换为字符串

将整数数组转换为枚举内联元素的字符串的最简单方法是什么?我正在考虑类似于执行转换的匿名函数。

0 投票
3 回答
221 浏览

erlang - Erlang - 匿名函数

如果我调用 test(),它不起作用。有人可以解释一下吗?

0 投票
2 回答
1924 浏览

javascript - setInterval / clearInterval 范围内的问题

我有以下代码,它工作正常,直到我点击#play 按钮。我假设这是因为 var intID 设置在另一个地方,并且当我 window.clearInterval() 它时它不在同一个范围内......我该如何解决这个问题?顺便说一句,这是 Google Maps API 版本 3

0 投票
7 回答
296 浏览

c# - 如何将函数设为方法私有?

我正在研究一种需要在不同位置重复一个小操作的方法,但是要重复的代码应该是该方法私有的。显而易见的解决方案是嵌套函数。然而,无论我尝试什么,C# 编译器都会向我吐槽。

大致相当于这个 Perl 片段:

是我在说什么,也是我想要在 C# 中完成的。

在这种情况下,类中的任何其他方法都不应该能够访问辅助函数。在我看来,用 C# 编写这个结构的最合乎逻辑的方法是这样的:

并且实际上使编译器赢得了它的保留。

因为这样的赋值是被禁止的,所以使用旧的 delegate(){} 语法代替 lambda 也是如此,在方法中声明委托类型也是如此——然而 csc 实际上允许我写的是:

对于不复制和粘贴大量代码并手动编辑参数来说,这一切都很好而且很花哨,但是它会将私有委托类型泄漏给类的其余部分,而不是将其保持为方法的私有。这首先破坏了目的。在这种情况下,使用 goto 语句和局部变量作为参数可以更好地封装“助手”,而不会牺牲代码重用。如果我想通过寄存器传递参数来模拟函数调用,我认为宁愿使用汇编程序。我也没有找到一种可以接受的重构代码的方法来完全避免这个问题。

那么,是否有可能强制这种通用面向对象语言服从呢?

0 投票
4 回答
14454 浏览

javascript - 自动执行匿名 JavaScript 函数的括号位置?

我最近将json2.js的当前版本与我项目中的版本进行比较,并注意到函数表达式的创建和自我执行方式有所不同。

用于将匿名函数包装在括号中然后执行它的代码,

但现在它将自动执行的函数包装在括号中。

CMS 在解释 JavaScript 的封装匿名函数语法的接受答案中有一条评论,即“两者:(function(){})();并且(function(){}());都是有效的”。</p>

我想知道有什么区别?前者是否通过离开全局匿名函数来占用内存?括号应该放在哪里?