javascript - jQuery 事件回调速度 : Anonymous vs. 命名函数

标签 javascript jquery callback jquery-events jsperf

这是一个随机问题,但我想知道为什么对于点击事件,相对于匿名函数,命名回调的性能更差。

这是 JSPerf 的链接我在 Mac 上的 Firefox 和 Chrome 中运行的测试。

我想我的假设是命名回调总是会表现得更好。例如,当使用 .each 命名回调时 is slightly faster .

感谢您的宝贵时间!

编辑 我编辑了 .each JSPerf 测试,因为 (a) 我没有测试我的意思,并且 (b) 我正在尝试 更能模仿事件。

编辑 2 正如 @Esailija 在下面指出的那样,我的测试设置从一开始就不正确。这个问题有点毫无意义,但至少它可以帮助进行 JSPerf 测试的人。

最佳答案

jsperf 已损坏,因为您累积了跨测试边界的事件处理程序。换句话说,首先运行的测试将是“最快的”。

测试的整个前提是荒谬的,如果其他条件相同,则有名称的函数和没有名称的函数之间没有区别。只有当您错误地设置 jsperf 时,您才会看到差异。当你不断地为他们获得相同的结果时,你就知道你的设置是正确的——但你会从常识中知道这一点:)

关于javascript - jQuery 事件回调速度 : Anonymous vs. 命名函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19827253/

相关文章:

javascript - 在JS中实现简单的回调

javascript - 使用谷歌地图获取特定国家的邮政编码

javascript - 无法在React中使用package.json "exports"导入模块

javascript - 将文本添加到 pre 标记时保持滚动条向下

javascript - GetBootstrap网站上的右栏,它是如何创建的?

AJAX 调用在 Phonegap 中无法工作,但工作正常

node.js - 初学者 Node.js 回调示例

相当于 Python 的 __setitem__ 的 JavaScript

javascript - Jquery Cookbook 模态按钮

angularjs - 如何检查 AngularJS 中是否指定了指令的方法参数?