Ответ 1
Я, кажется, часто сталкивался с этой проблемой и никогда не имел отличного ответа, кроме выбора умных точек останова в вашем javascript. Иногда есть инструмент для вашей конкретной ситуации, который может помочь найти проблему, иногда для меня это долгий процесс, чтобы найти утечку.
Посмотрите на Профилирование распределения в Chrome DevTools, который дает вам пользовательский интерфейс для ваших распределений, а затем позволяет вам вернуться к своим хранителям.
Вот хороший список инструментов утечки для Mozilla. Кроме того, есть некоторые скринкасты о том, как использовать инструменты. В частности, вас может заинтересовать раздел "Постобработка трасс стека", поскольку он упоминает о возможности получения лучших символов и информации о имени файла/строке из трассировки стека.
Если вы в порядке используете Internet Explorer в Windows, вот Детектор утечки JavaScript JavaScript, который также может оказаться полезным.
Наконец, я нашел этот хороший инструмент для github под названием MemoryLeakChecker после прочтения здесь, который ищет большие структуры данных и пытается помочь вам определить, где вы протекаете память.
Надеюсь, что это поможет и сообщит мне, какой из них (если есть) поможет вам. Извините за отсутствие актуальных гиперссылок, потому что сейчас у меня менее 10 репутации, я не могу поместить их в сообщение.