Test case details

Preparation Code

<div id="test1"></div>
window.content = {         // a simple string to be attached via innerHTML         string: '<div>Testing innerHtml and DOM-based methods on <strong>massive</strong> add.</div>',             // a node to be attached using DOM methods         dom: (function () {             var node, strong;             node = document.createElement('div');             node.appendChild(document.createTextNode('Testing innerHtml and DOM-based methods on '));             strong = document.createElement('strong');             strong.appendChild(document.createTextNode('massive'));             node.appendChild(strong);             node.appendChild(document.createTextNode(' add.'));             return node;         })()     };

Test cases

Test #1

var div1 = document.getElementById("test1"),     content = window.content,     html = []; for (var i = 0; i < 10000; i++) {     html.push(content.string); } div1.innerHTML = html.join(''); div1.innerHtml = '';

Test #2

var div1 = document.getElementById("test1"),     content = window.content,     frag = document.createDocumentFragment(); for (var i = 0; i < 10000; i++) {     frag.appendChild(content.dom.cloneNode(true)); } div1.appendChild(frag); div1.innerHtml = '';