for vs. while

Benchmark created on


Preparation HTML

<ul>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
  <li class="test">
    Test
  </li>
</ul>
<script>
  var collection = document.querySelectorAll('.test');
  var i = 0;
  var length = collection.length;
  j = length;
</script>

Test runner

Ready to run.

Testing in
TestOps/sec
for
for (i = 0; i < length; i++) {
  collection[i].className = 'changed';
}
ready
while
while (j-- > 0) {
  collection[j].className = 'changed';
}
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.