Javascript:点击元素一百万次的最快方法是什么

Zac*_*ith 5 javascript

我正在做一个有趣的编码挑战,我在聚会上发现(doyouevendev.org)

在元素上产生一百万次点击的最快方法是什么?编码挑战似乎以检查员为中心,我觉得这是值得的.

我的代码(我在chrome命令行中执行):

var item = document.getElementsByClassName("clicky-button pulse");
var item = item[0];
count = 0;
(function clickIt() {
    count += 1
    setInterval(function changeClicks() {
        item.click();
    }, 1);
    if (count <= 50) {
        clickIt();
    };
})();
Run Code Online (Sandbox Code Playgroud)

我怀疑有更好的方法......它实际上似乎在放慢速度......

Rom*_*est 14

"负面" while循环应该是稍快:

var i = 1000001;
while (--i) {
   item.click();
}
Run Code Online (Sandbox Code Playgroud)

选择一个:http: //www.stoimen.com/blog/2012/01/24/javascript-performance-for-vs-while/

Javascript性能:虽然vs For循环


Jon*_*ink 5

JavaScript是单线程的,所以保持简单:

for (var i = 0; i < 1000000; i++) {
    item.click();
}
Run Code Online (Sandbox Code Playgroud)

编辑:看起来@ romanperekhrest的答案可能稍微快一点,因为它使用递减的while循环.