Ответ 1
Он будет отличаться от браузера к браузеру, однако ключевое слово javascript delete
не имеет никакого отношения к методу DOM createElement
. Нет необходимости использовать delete
.
Что произойдет, так это то, что ссылка на элемент, находящийся в настоящее время в createdElement
, получит сбор мусора. Теперь в случае IE это будет означать, что элемент будет иметь счетчик ссылок, опущенный до 0, поэтому он уничтожит себя и освободит свою память. Другие браузеры делают вещи по-разному, как правило, элементы в DOM сами являются сборщиками мусора и будут удалены в течение одного и того же (или, возможно, специфичного для DOM) цикла GC.
Если бы элемент был добавлен в документ, тогда в случае IE была бы добавлена ссылка на элемент, поэтому, когда ссылка в createdElement
будет удалена, объект элемента все равно будет иметь ненулевой счетчик ссылок и продолжить существовать.
В случае других браузеров, в которых сами элементы собраны в мусор, элемент не будет собран, так как коллекционер увидит его на графике объектов, связанных с документом.