jQuery Cached Set

JavaScript performance comparison

Revision 7 of this test case created

Info

Compare performance of cached vs repeated element selections

Preparation code

<script src="//ajax.googleapis.com/ajax/libs/mootools/1.3/mootools-yui-compressed.js"></script>

<div id="top" class="mydiv">
  <p id="para_1" class="mytext">
    Paragraph one
  </p>
  <p id="para_2" class="mytext">
    Paragraph two
  </p>
  <p id="para_3" class="mytext">
    Paragraph three
  </p>
  <span id="span_1" class="mytext">
    Text in a span
  </span>
</div>
<p id="para_4" class="mytext">
  Paragraph four
</p>
<p id="para_5" class="mytext">
  Paragraph five
</p>
<p id="para_6" class="mytext">
  Paragraph six
</p>
<script>
  var parent_el = document.getElementById("top");
  var cached = $$(parent_el).pick().getElements('p.mytext');
</script>

Preparation code output

Paragraph one

Paragraph two

Paragraph three

Text in a span

Paragraph four

Paragraph five

Paragraph six

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in unknown unknown
Test Ops/sec
Cached elements
cached.setStyle('color', '#ff0000');
cached.setStyle('text-decoration', 'underline');
cached.setStyle('background-color', '#eeeeee');
pending…
No cache
$('top').getElements('p.mytext').setStyle('color', '#ff0000');
$('top').getElements('p.mytext').setStyle('text-decoration', 'underline');
$('top').getElements('p.mytext').setStyle('background-color', '#eeeeee');
pending…
Cache2
cached.setStyle('color', '#ff0000').setStyle('text-decoration', 'underline').setStyle('background-color', '#eeeeee');
pending…
Cach3
cached.setStyles({
  "color": "#ff0000",
  "text-decoration": "underline",
  "background-color": "#eeeeee"
});
pending…
sub
$("p.mytext",("top")).setStyle('text-decoration', 'underline').setStyle('background-color', '#eeeeee');
pending…

Compare results of other browsers

Revisions

You can edit these tests or add even more tests to this page by appending /edit to the URL. Here’s a list of current revisions for this page:

0 comments

Add a comment