Emptify element

JavaScript performance comparison

Test case created by Mayhem

Info

gotta go fast

Preparation code

<div id="test-div"></div>
<script>
Benchmark.prototype.setup = function() {
    var i = 1000;
    var d = document;
    var div = d.getElementById('test-div');
    while(i--) {
      div.appendChild(d.createElement('span'));
      div.appendChild(d.createTextNode('test'));
    }
   
    var slice = [].slice;
};
</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
innerHTML
div.innerHTML = null;
pending…
textContent
div.textContent = null;
pending…
firstChild
var node;
while (node = div.firstChild) {
  node.remove();
}
pending…
lastChild
var node;
while (node = div.lastChild) {
  node.remove();
}
pending…
Array from childNodes
var arr = slice.call(div.childNodes);
var i, len;
for (i = 0, len = arr.length; i < len; i ++) {
  arr[i].remove();
}
pending…
xpath
var node;
while (node = d.evaluate("child::*|text()", div, null, 8, null).singleNodeValue) {
  node.remove();
}
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