Часть Javascript вокруг нас (JAS)
Первый шаг к любому языку - это глубокое понимание концепций. Окружающий нас Javascript (JAS) - это серия статей, в которых сложные концепции Javascript объясняются в простой манере, вдохновленной событиями, связанными с нашим повседневным образом жизни.
В этой статье подробно рассматривается концепция «подавления и ограничения» в Javascript. В отличие от стандартного способа обозначения двух концепций, давайте разберемся с продавцом овощей.
В дни изоляции мы, должно быть, видели на улицах много тележек с овощами. Продавцы обычно кричат (фраза типа «Приходите и купите овощи! Овощи!»), Чтобы привлечь внимание покупателей. Чтобы максимизировать свою эффективность, они во время крика используют концепции Debouncing и Throttling. Звучит интересно? 🤔
Эти продавцы не будут кричать непрерывно в течение длительного времени. Из-за того, что они постоянно бегают по улицам, у них может не хватить энергии, чтобы не отставать от всего дня. Чтобы сэкономить энергию, а также не поставить под угрозу свои показатели продаж, они используют концепции javascript для устранения неполадок и регулирования.
Удаление
Рассмотрим менее населенные улицы / районы, вероятность потенциальных покупателей невысока. Поэтому изначально продавцы непрерывно кричат о продаже овощей. Но вскоре они будут кричать, только заметив потенциальных покупателей (которые могут выглянуть через балкон или коридор). Таким образом, человек экономит энергию и привлекает внимание покупателей.
«Этот способ выполнения события только для потенциального триггера называется Debouncing в javascript.»
Пример в реальном времени :: обработка операций, связанных с поиском
В таких приложениях, как Google Maps или Flipkart, окно поиска разработано с использованием концепции Debouncing.
Давайте немного углубимся. Когда пользователь вводит нажатие клавиши в Google Maps, он автоматически предлагает несколько местоположений, которые соответствуют вашим нажатиям клавиш. В фоновом режиме выполняется вызов API для получения данных с сервера.
Выполнение вызова API для каждого нажатия клавиши напрямую влияет на производительность и скорость приложения. В нашем случае слово «Disney» будет делать 5 вызовов API, так как оно состоит из 5 алфавитов.
Использование метода debounce может устранить проблемы с производительностью. Вместо вызова API для каждого нажатия клавиши он может запускать API , когда пользователь делает паузу между нажатиями клавиш. В том случае, когда пользователь делает паузу (даже на миллисекунды) после ввода «Disney», API будет вызываться один раз.
Таким образом Debouncing может уменьшить количество вызовов API и повысить производительность приложения.
Регулирование
С другой стороны, в густонаселенных районах вероятность потенциальных покупателей высока. Отказ от подписки может быть неподходящей техникой для продаж.
В этом сценарии продавец может привлечь внимание большего количества потенциальных покупателей. Опять же, продавец не может тратить энергию, постоянно крича. Скорее, они кричат через определенные промежутки времени, независимо от того, ждут ли покупателя, чтобы они их отвернулись или заметили.
Интервал может составлять от 2 до 4 минут в зависимости от сценария. Таким образом, потребляется меньше энергии и можно сделать больше объявлений.
«Такой способ выполнения события с фиксированным интервалом времени (независимо от какого-либо триггера) называется регулированием».
Вариант использования в реальном времени :: операции, связанные с GPS
Рассмотрим то же приложение Google Map. Чтобы обновить текущее местоположение пользователя, приложение использует процесс дросселирования, в котором он выполняет вызов API через регулярные промежутки времени, независимо от каких-либо триггеров.
Спасибо за уделенное время 😄! Надеюсь, вы получили четкое представление о концепциях.