Czy JavaScript nie powinien ignorować białych znaków? Dziwaczność węzła w Firefoksie

Napotkałem ten „błąd” w najnowszym wydaniu Firefoksa i nie wiem, co powoduje to zachowanie i który jest prawidłowym wynikiem.

HTML

<div><h1 id="heading">First Title</h1></div><div><h1>Second Title</h1></div>

JavaScript

var allDivNodes = document.getElementsByTagName("div");
console.log(allDivNodes[0].childNodes);
console.log(allDivNodes[1].childNodes);

console.log(allDivNodes[0].childNodes.length);
console.log(allDivNodes[1].childNodes.length);

Otrzymuję następujący wynik:

A oto dziwactwo. Jeśli dodam spacje w kodzie HTML i uruchomię ten sam skrypt, otrzymam ten wynik:

NOWY HTML. JavaScript pozostaje taki sam

    <div>
        <h1 id="heading">First Title</h1>
    </div>
    <div>
        <h1>Second Title</h1>
    </div>

Nowy wynik:

Myślałem, że JavaScript jest niewrażliwy na białe znaki. Dlaczego więc zmienia wartość nodeLength od 1 do 3?

questionAnswers(2)

yourAnswerToTheQuestion