DOM : alive

<session id="removeSession">
<p>item 1</p>
<p>item 2</p>
<p>item 3</p>
</session>

Nous voulons obtenir une session vide ! 


function clear(elem) {
  for (let i=0; i < elem.childNodes.length; i++) {
      elem.childNodes[i].remove();
  }
}

Le code précédent doit être corrigé, car à chaque destruction d'élément elem.childNodes.length est recalculé.

function clear(elem) {
  for (let i=0; i < elem.childNodes.length; i++) {
  console.assert(5===elem.childNodes.length,elem.childNodes.length);
     elem.childNodes[i].remove();
  }
  }

let removeSession = document.getElementById("removeSession");
clear(removeSession);

(index):51 Assertion failed: 4
(index):51 Assertion failed: 3

Correction

function clear(elem) {
  for (let i=0, n =elem.childNodes.length ; i < n; i++) {
     console.log(elem.childNodes.length);
     elem.childNodes[0].remove();
  }
}

Il est préférable d'appliquer le code suivant !   
function clear(elem) {
  elem.innerHTML = '';
} // radical et simple.