Здравствуйте, Sharov, Вы писали:
S>А это стандарт или имплементация мс?
Во времена, когда я плотно работал с IE, это был более-менее стандарт.
S>Зачем структуре данных (DOM) знать что-то о коде, с ней работающим?
Затем, что так устроен DOM. С его точки зрения, у элемента button есть атрибут onclick, который является ссылкой на скриптовый объект "замыкание".
Если строить DOM не на основе COM или аналогичной reference-counted неуправляемой технологии, а, скажем, на основе java- или javascript-объектов, то такой проблемы не возникает.
Вот вроде бы простая статья, на пальцах объясняющая эффект:
https://learn.javascript.ru/memory-leaks