HTML Preparation code:
AخA
 
1
<div id='test'></div>
Tests:
  • append

     
    var newElement = document.createElement("div");
    newElement.id = "testing"
    for (i = 0; i < 1000; i++) {
      var newElementPart = document.createElement("div");
      newElementPart.classList.add("testClass");
      newElement.append(newElementPart);
    }
    document.getElementById("test").append(newElement);
  • appendChild

     
    var newElement = document.createElement("div");
    newElement.id = "testing"
    for (i = 0; i < 1000; i++) {
      var newElementPart = document.createElement("div");
      newElementPart.classList.add("testClass");
      newElement.appendChild(newElementPart);
    }
    document.getElementById("test").appendChild(newElement);
  • insertAdjacentHTML

     
    html = "<div id='testing'>"
    for (i = 0; i < 1000; i++) {
      html += "<div class='testClass'></div>";
    }
    html += "</div>";
    document.getElementById("test").insertAdjacentHTML("beforeend", html);
  • DOMParser

     
    html = "<div id='testing'>"
    for (i = 0; i < 1000; i++) {
      html += "<div class='testClass'></div>";
    }
    html += "</div>";
    document.getElementById("test").append((new DOMParser()).parseFromString(html, "text/html").body.childNodes);
  • createContextualFragment

     
    html = "<div id='testing'>"
    for (i = 0; i < 1000; i++) {
      html += "<div class='testClass'></div>";
    }
    html += "</div>";
    document.getElementById("test").append(document.createRange().createContextualFragment(html));
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    append
    appendChild
    insertAdjacentHTML
    DOMParser
    createContextualFragment

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 5 months ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:130.0) Gecko/20100101 Firefox/130.0
Firefox 130 on Windows
View result in a separate tab
Test name Executions per second
append 1168.8 Ops/sec
appendChild 972.5 Ops/sec
insertAdjacentHTML 1244.6 Ops/sec
DOMParser 2074.1 Ops/sec
createContextualFragment 619.5 Ops/sec