Remove attr composed vs chained simple methods

JavaScript performance comparison

Test case created by John Bender

Info

This tests the performance of a vanilla chain of $.fn.removeAttr against the performance of a composed version of the underlying $.removeAttr.

Preparation code

<script src="//code.jquery.com/jquery-1.7.2.js"></script>
<script src="https://raw.github.com/johnbender/jquery-lazy-proxy/master/lazy.js"></script>
<script>
window.testElementCount = 10;
</script>
<script src="https://raw.github.com/johnbender/jquery-lazy-proxy/master/test/proxies-perf.js"></script>
 
<script>
Benchmark.prototype.setup = function() {
    // cache the test sets
    window.testSetDivs = $( "[data-test]" );
   
    // add the attribute and data to be removed
    window.testSetDivs
      .attr("foo", "bar")
      .attr("bing", "bang")
      .data( "baz", "bak" );
};
</script>

Preparation code output

Test runner

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

Java applet disabled.

Testing in unknown unknown
Test Ops/sec
Vanilla chain with two $.fn.removeAttr
window.testSetDivs.removeAttr( "foo" ).removeAttr( "bing" );
pending…
Composition of two $.removeAttr
window.testSetDivs.cleanUpJustAttrs( "foo", "bing" );
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