Как стать автором
Обновить

Комментарии 9

Не так давно на Хабре была статья про числа в js, там сказано, что вещественные хранятся в куче.
Строки только называются "примитивами", по факту это те же объекты, вся начинка в куче.
В тему про сборку мусора и доступность объектов ещё можно добавить, что, во первых, доступность смотрится не только от глобального объекта, а ещё и от ждущих своей очереди тасков в event loop, во вторых, упомянуть о ссылках на объекты в замыканиях, ну и совсем особый кейс URL.createObjectUrl для блобов, который надо освобождать отдельно.

window.users = null;
Разве null — это не объект? users никуда не исчезнет, он останется со значением null. Предыдущее содержимое конечно удалится сборщиком мусора.
Мне кажется, ты хотел написать
delete window.users
В браузере, если ошибиться и использовать var вместо const или let, движок присоединит переменную к объекту window.

Это утверждение весьма странное — не упомянуты области видимости и «всплытие»(hoisting).
Поправьте меня коллеги, если я не прав…

Да, очень.
Если var не в глобальной области видимости он в globalThis не станет лезть (IIFE поможет избежать такой глупости).
Большинство новых русских JS экспертов придумывают страшилки, чтобы дети не использовали var, вместо того, чтобы показать как каждый тип объявления переменных работает и в каких случаях var лучше всего себя показывает.

Я пока не встречал случаев, когда оправданно можно использовать var а не let или const, часто сама IDE подчеркивает var и предлагает заменить его на другой вариант.
Больше всего я использую const т.к часто в переменной хранится именно ссылка на объект и лишь изредка требуется её перезаписывать
Var использую, когда нужна совместимость со старыми версиями, например «ECMAScript: ECMA-262, edition 3» (самая древняя в моей поддержке).
Можно, конечно, транспайлер и полифиллы использовать, но я предпочёл сделать это вручную из-за профита в минимизации.
отличная формулировка, надо запомнить))
> Они не идеальны, но все же гораздо лучше, чем многие другие
Статья хороша. Но как мне кажется, не хватает инфы о том, как работает event loop

Практически все что написано в статье является вымыслом.

Ничего подобного в реализации JavaScript ни в одном из известных мне RunTime нет. Это какойто набор фантазий в принципе. Откуда это вообще взято и кто это выдумал?

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

Зарегистрируйтесь на Хабре, чтобы оставить комментарий