Цитата:
|
Цитата:
тот же самый паттерн КЭШ. Тут то же самое, ПОИСК метода в отце, и в отце отцов занимает время, у папки то ведь тоже может быть куча свойств и нужно по всем пробежаться и посмотреть на их имена совпадают ли с запрашиваемым)) это естественно) но это так реализовано что движки JS это все оптимизируют так, что НЕ влияет)) они составляют карту, и составляют области видимости) , замыкания)) иными слвоами поиск метода в ОТЦАХ занимает минимум времени потому что физически он ищется не в отцах а в специальном месте области видимости)) |
Цитата:
обьекты в JS удаляются автоматически тогда когда на обеькт перестает существовать хотя бы одна ссылка. например var q = {a:20} q это НЕ имя обьекта, как может показаться, q это лишь ссылка на обьект, то есть ТО что с право создалось и засунулось в память, а ссылка на это засунулась в q мы так же можем сделать так var w = q оператор ровно посмотрел что находится в q? посмотрел что там ссылка, посмотрел что по ней, посмотрел адрес этого в памяти)) сгенерировал новую ссылку, и засунул её в w теперь в q и w лежит ссылки на одну и ту же область в памяти)) и если сделать так q.a = 400 то и w.a станет 400 потому чо это одно и то же) как очевидно)) так вот чтобы УДАЛИТЬ обьект ты думаешь что нужно сделать так: либо q либо w прировнять к NULL )) на само деле не так)) это действие просто заменит обьект {a:400} пустым обьектом из нулей, а как известно нули память тоже жрут. чтобы удалить обьект я уже говорил что нужно удалить все ссылки на него оператор delete delete q delete w все, вот терь когда сборщик мусора (а эта хреновина так называется) пройдется по памяти и заметит что есть участок на который ни че не ссылается) она очистит его)) |
Часовой пояс GMT +3, время: 08:08. |