HTML Preparation code:
AخA
 
1
<div id="parent"></div>
Script Preparation code:
x
 
const node = document.getElementById('parent');
const child = document.createElement('div')
child.classList.add('child')
child.textContent = 'some text'
for(var i = 0; i < 5000; i++) node.appendChild(child);
Tests:
  • innerHTML

     
    const node = document.getElementById('parent');
    node.innerHTML = '';
  • replaceChildren

     
    const node = document.getElementById('parent');
    node.replaceChildren();
  • remove by while

     
    const node = document.getElementById('parent');
    while(node.firstChild) node.firstChild.remove()
  • removeChild by while

     
    const node = document.getElementById('parent');
    while(node.firstChild) node.removeChild(node.firstChild)
  • remove by forEach

     
    const node = document.querySelectorAll('.child');
    for (const child of node) child.remove()
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    innerHTML
    replaceChildren
    remove by while
    removeChild by while
    remove by forEach

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 6 days ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36
Chrome 108 on Windows
View result in a separate tab
Test name Executions per second
innerHTML 2393813.8 Ops/sec
replaceChildren 1947323.5 Ops/sec
remove by while 22930084.0 Ops/sec
removeChild by while 19834692.0 Ops/sec
remove by forEach 1232102.6 Ops/sec