HTML Preparation code:
AخA
 
1
<div id='messages'></div>
Script Preparation code:
 
let list = document.getElementById("messages");
for(i=0; i<1000; i++) {
    list.innerHTML += "<span>Text</span>"
}
Tests:
  • firstChild/firstChild

     
    let list = document.getElementById("messages");
    while (list.firstChild) {
        list.removeChild(list.firstChild);
    }
  • lastChild/lastChild

     
    let list = document.getElementById("messages");
    while (list.lastChild) {
        list.removeChild(list.lastChild);
    }
  • firstChild/lastChild

     
    let list = document.getElementById("messages");
    while (list.firstChild) {
        list.removeChild(list.lastChild);
    }
  • lastChild/firstChild

     
    let list = document.getElementById("messages");
    while (list.lastChild) {
        list.removeChild(list.firstChild);
    }
  • innerHTML

     
    document.getElementById("messages").innerHTML = "";
  • textContent

     
    document.getElementById("messages").textContent = "";
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    firstChild/firstChild
    lastChild/lastChild
    firstChild/lastChild
    lastChild/firstChild
    innerHTML
    textContent

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: one year ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Safari/605.1.15
Safari 16 on Mac OS X 10.15.7
View result in a separate tab
Test name Executions per second
firstChild/firstChild 5599137.0 Ops/sec
lastChild/lastChild 5694067.0 Ops/sec
firstChild/lastChild 5646097.0 Ops/sec
lastChild/firstChild 5664372.0 Ops/sec
innerHTML 5227728.0 Ops/sec
textContent 5206052.5 Ops/sec