Добрый день. Пример кода - обычный пример, вырванный их контекста на просторах интеренета. Переделывать его не надо - принципиально понять почему происходит утечка памяти. Разъясните, пожалуйста.
Код | var theThing = null; var replaceThing = function () { var priorThing = theThing; // hold on to the prior thing var unused = function () { // 'unused' is the only place where 'priorThing' is referenced, // but 'unused' never gets invoked if (priorThing) { console.log("hi"); } }; theThing = { longStr: new Array(1000000).join('*'), // create a 1MB object someMethod: function () { console.log(12); } }; }; setInterval(replaceThing, 10);
|
|