Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Анонимные\именованные функции - экономия памяти при создании? (https://javascript.ru/forum/misc/57058-anonimnye%5Cimenovannye-funkcii-ehkonomiya-pamyati-pri-sozdanii.html)

nevro 17.07.2015 12:23

Анонимные\именованные функции - экономия памяти при создании?
 
Прочитал про функции, но не понял следующий момент:
1. Перед выполнением парсер побегает скрипт и, встретив именованную функцию, помещает её в память.
2. Затем начинает выполнять скрипт.
3. Встретив во время выполнения вызов анонимной функции, он только тогда ищет определение этой функции и помещает её в память.

1. Правильно ли я понял схему? Если нет, то как правильно?
2. На мобильных устройствах использование анонимных функций, получается,экономит память? Т.е. Чтобы парсер не забивал память сразу всеми функциями из скрипта - некоторые могут быть в условиях, которые никогда не выполнятся.

kostyanet 17.07.2015 15:13

Цитата:

Сообщение от nevro
но не понял следующий момент:

Это не наше дело. Пусть не забивает память или забивает - вы все равно ее не можете толком вручную очистить, снять ненужные треды, разблокировать диапазоны и тп. Забейте. На клиенте мемори как грязи.

В стиле присвоения переменным указателей на безымянные функции вам нередко придется заботиться о том, чтобы вызвать функцию которая должна быть определена выше. Если же скрипт доходит до конца не встретив ни одного вызова - то никакой разницы.

kostyanet 17.07.2015 15:19

Цитата:

Сообщение от nevro
Т.е. Чтобы парсер не забивал память сразу всеми функциями из скрипта

А скрипт конечно не в память загружен, а транс-цен-ден-тально где-то болтается и оттуда доносится.


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