最佳答案
我是 JavaScript 的新手。我理解语言的许多概念,我一直在阅读关于原型继承模型的文章,并且我正在使用越来越多的交互式前端工具。这是一种有趣的语言,但是我总是对许多非平凡交互模型的典型回调意大利面感到有点厌烦。
对我来说,有一件事总是很奇怪,那就是尽管可读性是一个由 JavaScript 嵌套回调组成的噩梦,但是在很多示例和教程中我很少看到的一件事是使用预定义的命名函数作为回调参数。我白天是一个 Java 程序员,而 抛弃关于代码单元的 Enterprise-y 名称的刻板印象是我在一个拥有众多功能强大的 IDE 的语言中工作的乐趣之一,使用有意义的,如果很长的名称,可以使代码的意图和意义更加清晰,而不会使它更难以实际生产。那么为什么不在编写 JavaScript 代码时使用相同的方法呢?
仔细想想,我可以提出支持和反对这个想法的论点,但是我对语言的天真和新鲜使我无法得出任何结论,为什么这在技术层面上是好的。
如此多的现代浏览器显示出比以前更快地执行 JavaScript 代码的能力,我看不出使用匿名回调可以获得哪些微不足道的性能提升是必要的。看起来,如果使用命名函数是可行的(可预测的行为和执行路径) ,那么没有理由不这样做。
那么,是否有什么我不知道的技术原因或陷阱,使这种做法如此普遍的原因?