我目前正在写一篇论文。在本文中,我将讨论代码优化。在我的示例中,我将在 JavaScript 中区分两个数组。比较 ES5 过滤器与嵌套 for 循环。
我的测试使用 jsPerf.com按预期进行。 ES5 过滤器比嵌套 for 循环慢 89-90%。使用 performance.now()
可以找到类似的结果(启动计时器、运行代码、停止计时器并计算所用时间)。
所有这些都非常适合用于基准测试代码。真的,他们是。但是,它们在学术上并不正确。第一次测试完成后,如果我运行 100% CPU 密集型基准测试会怎样?那么测试 2 的结果是“无效的”。
对两段 JavaScript 代码进行基准测试的最佳方法和正确方法是什么?
最佳答案
我找到了答案。使用谷歌浏览器的 Profiler我能够获得函数的 CPU 时间。
使用分析器似乎是执行此操作的最佳方式,因为它实际上使用 CPU 时间而不是实际时间。结果应该不会受到影响,即使我的 CPU 在其中一个测试中以 100% 的速度运行。
关于javascript - 对 JavaScript 代码进行基准测试的学术正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40672819/