JS 性能基准测试

比较 JavaScript 代码性能——并排测量不同实现的执行速度

JavaScript 性能基准测试工具 — 使用高精度计时并排测量和比较代码性能,支持预热运行、历史追踪和多次执行验证

  1. 编写可选的设置代码(Setup Code),为所有测试用例准备共享数据或状态——这段代码在每个测试开始前运行一次,不计入计时。例如,预生成大数组(const data = [...Array(10000).keys()]),创建复杂对象层级结构,或初始化 Web API 资源。将设置代码设为共享并排除在计时之外,确保您的性能测量仅反映被测算法本身,而非数据准备开销。设置块接受任何有效的 JavaScript——您拥有对浏览器 JS 引擎的完全访问权限,包括现代 ES2024 特性。
  2. 添加一个或多个测试用例(Test Cases)——每个包含描述性名称(如 'for 循环'、'Array.forEach' 或 'for...of')和需要基准测试的代码片段。将竞争实现并排比较——例如,比较 Array.filter().map() 与同时执行两个操作的单个 for 循环的性能,或对同一数据集比较不同排序算法的执行速度。工具使用相同的迭代次数独立运行每个测试用例,确保实现之间的公平比较。
  3. 配置基准测试参数:迭代次数(Iterations)控制每个测试用例每次运行执行多少次(更高的值通过摊销浏览器 JIT 编译成本产生更稳定的平均值),预热次数(Warmup Runs)在测量前执行预备轮次以触发 JIT 优化(对比较 V8 优化代码路径至关重要),超时时间(Timeout)限制总执行时间以防止无限循环。点击运行基准测试执行所有测试用例并查看结果,包括每秒操作数(ops/sec)、总执行时间、每次操作平均时间以及相对于最快实现的相对速度。使用重新运行(3次)执行三次以获得统计置信度。基准测试历史记录保存在本地,用于追踪优化进度。所有代码均在您的浏览器中本地运行——您的专有算法和测试代码永远不会离开您的设备。

请启用 JavaScript 以使用这些工具。