Using getElementsByTagName vs children

Benchmark created by Ryan on


Description

Which is faster?

Preparation HTML

<script src="https://code.jquery.com/jquery-latest.min.js"></script>
<ul id="list">
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
  <li>Placeholder text</li>
</ul>

Test runner

Ready to run.

Testing in
TestOps/sec
getElementsByTagName
$('#list').get(0).getElementsByTagName('li');
ready
children
$('#list').children('li');
ready
find
$('#list').find('li');
ready

Revisions

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