Встречается на собеседованиях • сегодня

Сталкивался ли с утечкой памяти в JS

Да, сталкивался. Основные причины утечек в JS:

  1. Глобальные переменные - случайное создание переменных без let/const:
js
function leak() {
  globalVar = 'Утечка'; // без var/let/const
}
  1. Таймеры и интервалы без очистки:
js
const interval = setInterval(() => {}, 1000);
// забыли clearInterval(interval)
  1. Замыкания с большими объектами:
js
function outer() {
  const hugeData = new Array(1000000);
  return function inner() {
    // держит ссылку на hugeData
  };
}
  1. DOM-элементы в памяти после удаления:
js
const element = document.getElementById('el');
document.body.removeChild(element);
// element остаётся в памяти, если есть ссылки

Для поиска утечек использую Chrome DevTools (Memory tab), особенно полезен Heap Snapshot.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы