为什么不写匿名函数内容而不是匿名函数和匿名函数内容?匿名函数有用性
Q
匿名函数有用性
1
A
回答
0
我不知道这是否适用,因为它是特定于Javascript,我没有看到Javascript标签,但是......一次创建+调用匿名函数并不罕见。这通常是为了保护全球范围内的可变污染。
var x = 1;
(function(){
var x = 2;
})();
x == 1;
0
它在那里,所以你不必创建一个本质上无用的函数包装器。
7
因为你不写一个匿名函数,然后立即调用它。它通常传递给其他一些可以处理它的函数(例如,使用匿名函数将数组映射到另一个数组)。
1
可能最大的用途是用于一次性功能,不会在其他地方使用,或者需要根据需要动态创建。这样,他们不需要“污染”命名空间。
例如,在蟒:
x_values = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
y_values = map(lambda x: x**x + 2x + 3, x_values)
通过使用拉姆达,我并不需要,以在模块命名空间的功能只是为了一个多项式Λ(x^2 + 2X + 3)。
有很多方面他们派上用场,特别是在函数式编程(例如查找闭包或咖喱)中。
0
它们的存在是因为有很多次你想拥有表达式语法的方法语义。
var l = new List<int>() { 1, 2, 3, 4, 5 };
var a = l.Where(i => i > 3); // a = 4, 5
我不想打扰写一个新的方法谓词来检查一个整数是否大于三。我想要一个方法的意义,我只能放一个表达式。匿名函数让我有两个。活泉! :)
0
如果您问“为什么使用lambda表达式?”,那么有几个答案。首先,lambda表达式是简写,通常比全匿名函数(即使用delegate()项)或完整的函数和委托的冗长备选更容易阅读和理解。 Lambda表达式对于执行简单,简单,“富有表现力”的计算(即一组输入中的简单数学)也是理想的,这在软件编程中非常常见。
Lambda表达式是一个强大的工具,可以帮助您提高代码的表现力,简单性和可读性。
2
它们通常用于回调。你不能只写内容,因为你的代码不会直接执行它。
相关问题
- 1. 匿名函数使用匿名函数使用此功能时
- 2. 匿名函数
- 3. 在匿名函数中调用匿名函数(初始)
- 4. PHP调用匿名函数内部匿名函数
- 5. 函数javascript:匿名但有名字?
- 6. 匿名函数和node.js性能
- 7. 匿名函数的FunctionPointer唯一性
- 8. PHP中的匿名函数性能
- 9. JQuery .each():匿名函数的性能?
- 10. 匿名函数返回类属性? PHP
- 11. 匿名与非匿名函数Lua
- 12. Kotlin匿名函数用例?
- 13. 角使用匿名函数
- 14. 凡使用匿名函数
- 15. 调用匿名函数
- 16. 匿名函数使用#()
- 17. TypeScript匿名函数
- 18. 与匿名函数
- 19. 匿名函数pecularities
- 20. 与匿名函数
- 21. javascript匿名函数
- 22. array_walk匿名函数
- 23. JavaScript匿名函数
- 24. Tcl匿名函数
- 25. 从函数调用匿名函数
- 26. 命名匿名函数
- 27. Clojure:命名匿名函数
- 28. 匿名函数没有输入参数
- 29. JS匿名函数(没有匿名功能支持)
- 30. 匿名函数与非匿名函数一样强大
如果不是直接,它是什么时候执行的?它甚至没有名字! – 2009-07-11 04:26:06