Какими способами можно создать утечку памяти в JavaScript?
Утечка возникает, когда ненужные данные остаются достижимыми: через слушатели, таймеры, подписки, глобальные коллекции или удерживаемые DOM-узлы.
Читать ответПодготовка к интервью
Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.
Проверьте, насколько резюме подходит выбранной позиции, и получите рекомендации по улучшению.
Каталог
Утечка возникает, когда ненужные данные остаются достижимыми: через слушатели, таймеры, подписки, глобальные коллекции или удерживаемые DOM-узлы.
Читать ответJavaScript выполняет текущую задачу до завершения, затем обрабатывает microtasks в контрольных точках; таймеры и события ставят отдельные задачи.
Читать ответЛенивая загрузка откладывает скачивание и выполнение кода до момента, когда он нужен, уменьшая начальную нагрузку приложения.
Читать ответx?: string разрешает отсутствие свойства, а x: string|undefined требует само свойство, хотя его значение может быть undefined.
Читать ответСначала проверьте корректность состояния, эффектов и загрузки, затем измерьте, какая часть рендера действительно создаёт задержку.
Читать ответTypeScript помогает обнаруживать несогласованность контрактов до выполнения и делает рефакторинг и навигацию по коду надёжнее.
Читать ответany позволяет использовать значение почти без статических ограничений, unknown требует сначала сузить тип или выполнить проверку.
Читать ответСервер возвращает HTTP-ответ со статусом, заголовками и необязательным телом; для документа тело обычно содержит HTML.
Читать ответTeleport переносит DOM-фрагмент в другой контейнер, сохраняя компонентные связи; Suspense координирует поддерживаемые асинхронные зависимости и fallback.
Читать ответvar имеет область функции, let и const — блока; const запрещает переприсваивание привязки, но не делает объект неизменяемым.
Читать ответОпишите свой опыт и добавляйте препроцессор только ради конкретных возможностей, которые нужны проекту.
Читать ответКод прежде всего падает из-за необъявленного user; кроме того, новые function/object props мешают memo, а постоянный value не даёт редактировать поле.
Читать ответ