Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   замыкания и утечки памяти (https://javascript.ru/forum/misc/48825-zamykaniya-i-utechki-pamyati.html)

newobject 18.07.2014 12:01

замыкания и утечки памяти
 
Где то читал, что замыкания вызывают утечки памяти. Смысл там вроде был такой. Если есть замыкание, и есть ссылка на это замыкание (а это любая функция с локальным скопом, a=function(){var a;} -- это уже замыкание), то изнутри этого замыкания будет виден, как минимум, весь глобал. Поэтому ничего не удалится никогда, поскольку замыканию нужны эти глобальные структуры.
В то же время, несмотря на пиар этих замыканий со стороны крокфорда и других дельцов, которые постоянно вещают нам о какой-то мифической выразительности и мощности замыканий, я, честно говоря, особого профита от их использования не вижу, помимо изоляции неймспейсов.

Иногда читаешь статейку Васи Пупкина, который грозится показать якобы "магию" с замыканиями, но вникнув, выясняешь, что это очередное кукареканье, а все что он показал -- банальщина.

Так, может быть отказаться от замыканий, объявить их Deprecated, а в следующей версии выпилить их из языка? Как вы считаете?

А кто не согласен, покажите мне пример, где они действительно рулят, делают код ясней, выразительней, и тп.

Erolast 18.07.2014 12:39

Поработай над каким-нибудь более или менее крупным проектом - сразу поймешь всю красоту и необходимость замыканий.


Часовой пояс GMT +3, время: 22:52.