They don't increase i at all. It is impossible to count to 10,000 at a rate of 200Mhz. That implies a 2000Ghz processor.
JS Perf is fundamentally broken. It doesn't force a side effect, and from the debugger, the first step it does is something like:
while(100,000,000--) {
// your code here
}
The chrome compiler then recognizes the loops can be swapped, and eliminated, thus it runs your code once, yet jsperf thinks it ran it hundreds of millions of times.
JS Perf is fundamentally broken. It doesn't force a side effect, and from the debugger, the first step it does is something like:
The chrome compiler then recognizes the loops can be swapped, and eliminated, thus it runs your code once, yet jsperf thinks it ran it hundreds of millions of times.