问题标签 [jsperf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
224 浏览

javascript - 什么是影响最大的 jsperf 测试?

是否有任何网站根据其对编程的影响来组织 jsperf 测试?如果没有,您是否发现了一些测试,我会注意到?

0 投票
1 回答
82 浏览

javascript - 我的 JSPerf 测试用例在使用回调评估 toggle() 时“中断”

在测试我对向 jQuery .toggle() 方法添加 HTML5 隐藏属性支持的答案时,我创建了一个 JSPerf 测试来确定与 .toggle() 方法相比要慢多少.toggle(function() \[...\]).toggle()。令我惊讶的是,据报道,带有额外处理的脚本执行得更快!除了结果违反直觉之外,我怀疑是一个问题,因为在结果返回很久之后,我还看到屏幕上的切换。

如何“修复”我的测试以获得准确的结果?

0 投票
1 回答
1051 浏览

html5-canvas - 如何衡量 CSS 过渡和动画的性能

我想比较 jQuery 的动画功能和纯 CSS3 过渡的性能。我发现有一个requestAnimationFrame API来衡量性能,但它似乎只能与 canvas 元素一起使用?

与CSS3和canvas相比,有什么好方法可以测试绝对定位的性能吗?

stats.js有用且值得信赖吗?你有什么经验?

我构建了这个jsPerf 测试。不幸的是 jQuery.on 方法没有被执行。:(

0 投票
1 回答
999 浏览

javascript - 是否可以从 jsperf 中删除损坏的修订?

jsperf我正在(这里)做我的第一步,以提高我的一些脚本的性能。

我想知道是否可以删除/删除我意外发布的测试修订版-它们已损坏且无法使用,因此:

问题:
假设我在进行修订 5 时弄清楚了它是如何工作的 - 有没有办法删除修订 1-4?

谢谢!

0 投票
2 回答
298 浏览

jquery - jQuery 选择器性能:一个奇怪的案例

我测试了 2 个 ID 选择器之间的差异,第一个是正常的:$('#lol') 第二个是相同的,但放在多个括号之间:$((((('#lol')))))

我用 firefox 和 chrome 对 jsperf 进行了测试。结果很有趣:使用 firefox,第一个(普通选择器)慢了 40%(!!!)。使用 chrome,第二个慢 0.84%。

为什么会有这样的差异?有人可以解释一下吗?

jsperf.com 可靠吗?

你可以在这里看到测试:

http://jsperf.com/ghshshsrd

为了好玩,我将在其他浏览器上进行测试。

(编辑:顺便说一句,我在 Mac OS X 上)

0 投票
6 回答
7835 浏览

javascript - 在 JavaScript 中删除单数符号的快速且省钱的方法

我想删除 JavaScript 中数字的符号。以下是我在 jsperf ( http://jsperf.com/remove-sign-from-number )上检查过的测试用例

根据这些测试:if(n < 0) n *= -1似乎是一个很好的解决方案。

你知道有什么更好、更省钱、更有效的方法吗?

编辑 1:添加了 Nikhil 的Math.sqrt案例,但sqrt在大多数系统中通常很慢。

编辑 2: Jan 的按位运算建议在某些情况下可能会更快,但也会删除小数位数,因此对我不起作用。

0 投票
1 回答
729 浏览

javascript - performance of '==' vs '===' (jsperf)

I was just browsing the endless list of jsperf tests and looked at the one called == vs === perf. I expected the outcome to be a no-brainer ( === to be faster ) but no, not in FireFox.

Can someone explain to me how Firefox can be so fast and how it is possible that === is more or less equal to == ?

Although this post has a lot in common with my post, it doesn't answer the result Firefox produces!

0 投票
1 回答
77 浏览

validation - 如何验证 jsPerf 测试输出

昨天我收到了一个比较无效的 jsPerf 测试,因为测试的函数实际上没有返回正确的结果。

我的问题:有没有办法直接在 jsPerf 中验证每个测试输出?

0 投票
2 回答
319 浏览

javascript - jQuery 事件回调速度:匿名与命名函数

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

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

我想我的假设是命名回调总是会表现得更好。例如,当使用.each命名回调时会稍微快一些

谢谢你的时间!

编辑我编辑了.eachJSPerf 测试,因为(a)我没有测试我的意思,(b)我试图更多地模仿事件。

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

0 投票
1 回答
337 浏览

javascript - 为什么在没有所有者的情况下调用函数会更慢?

如果我执行以下操作:

var abs = Math.abs;

abs(-10)应该比 快Math.abs(-10)吗?因为 abs 是直接调用的。

这引起了我的注意: Math.abs vs custom abs function 在 jsperf.com 完成的测试结果

更新:

在 Internet Explorer 11 中执行的相同测试显示了完全不同的结果: 在 jsperf.com 完成的测试结果

我推测这是由于对 Chrome 的 V8 引擎中的内置函数进行了一些优化。

nnnnnn创建的测试澄清了我想说的:属性快捷方式 在 jsperf.com 完成的测试结果