Сообщение от FINoM
|
Сделал небольшую пробу по памяти: перед запуском ИЕ отжирал 30 МБ, на пике съедал 120 МБ, после окончания работы скрипта таск менеджер показал 100МБ. То есть миллион инстанцов отжирают 70—90МБ. Да, опять же, это не глубокое тестирование:
console.log = function() {};
console.time( '1' );
for(var i = 0; i < 1000000; i++) new C;
console.timeEnd('1');
Небольшой замер скорости:
В Хроме 26195.000ms (просто для сравнения)
В ИЕ 10 15683ms
В ИЕ 8 112826ms (всего лишь в ~4 раза медленнее Хрома. Еще раз отмечу, в Хроме используется тривиальное наследование).
|
похоже, что в тесте экземпляры сразу убиваются сборщиком мусора, и в следствие память освобождается. а остаточные 90 мб - это "удалить на потом", т.к. у IE свой тупанутый сборщик мусора, который может очистить память, когда фаза луны соблаговолит - либо через секунду, либо через минуту.
а если собрать экземпляры в массив?