Я все больше и больше увлекаюсь разработкой приложений высокого уровня с помощью JavaScript / jQuery.Я пытался узнать больше о языке JavaScript и погрузиться в некоторые из более продвинутых функций.Я только что прочитал статью о утечках памяти , когда я прочитал этот раздел статьи.
JavaScript - это язык для сбора мусора, то есть памятьприсваивается объектам при их создании и восстанавливается браузером, когда на них больше нет ссылок.Хотя в механизме сборки мусора в JavaScript нет ничего плохого, это противоречит тому, как некоторые браузеры обрабатывают выделение и восстановление памяти для объектов DOM.
Это заставило меня задуматься о некоторых моих привычках программирования,В течение некоторого времени я очень был сосредоточен на минимизации количества запросов, которые я отправляю на сервер, что я считаю просто хорошей практикой.Но мне интересно, иногда я не захожу слишком далеко.Я очень не знаю о любых проблемах / узких местах эффективности, которые поставляются с языком JavaScript.
Пример
Недавно я создал приложение для управления изъятием для буксирующей компании.Я использовал диалоговый виджет jQuery UI и заполнил сетку данных конкретными данными заявки.На первый взгляд, это звучит очень просто ... но здесь передается МНОГО данных.
(а теперь вопрос ... drumroll пожалуйста...)
Мне интересно, какие плюсы и минусы есть у каждого из следующих вариантов.
1) Сделать только один запросить данный билет и сохранить его постоянно в DOM
.Просто показывая / скрывая модальное окно, это означает, что на один билет отправляется только один запрос.
2) Делайте запрос каждый раз, когда билет открыт, и уничтожайте его, когда он закрыт.
Моя естественная склонность заключалась в том, чтобы хранить билеты в DOM
- но я обеспокоен тем, что это в конечном итоге начнет загружать тонну памяти, если приложение будет работать долго без сброса (чтоэто будет).
Я действительно просто ищу плюсы / минусы для обоих этих двух вариантов (или что-то изящное, о чем я даже не слышал = P).