Итак, я играл со статическими || живые нодлисты, пытаясь проверить эту концепцию, я попробовал различные сценарии, но есть два сценария, которые привлекли мое внимание:Живые и статические списки узлов
var toBeLogged = document.getElementsByTagName('p');
console.log(toBeLogged.length); // Returns 1 to the console
var newEl = document.createElement('p');
document.body.appendChild(newEl);
console.log(toBeLogged.length); // Returns 2 to the console
, который имеет смысл, так как getElementsBy ... представляет собой набор живого узла, так что, очевидно, будет возвращайте обновленное значение при запросе значения снова после обновления.
но сценарий номер два с небольшим изменением делает «Live» Nodelist действуют как статические:
var toBeLogged = document.getElementsByTagName('p').length;
console.log(toBeLogged); // Returns 1 to the console
var newEl = document.createElement('p');
document.body.appendChild(newEl);
console.log(toBeLogged); // Returns 1 also to the console
поэтому мой вопрос: почему переменные созданные для представления свойства длины живого Нодлистом является не возвращая живое значение, как в значении переменной, представляющей непосредственно нодлист, без добавления свойств.
Я пытаюсь описать вещи точно так, как могу. Спасибо заранее. оцените свое время, потраченное на него.
Спасибо, хорошее достаточное объяснение. оцените Maxx. – Hassan