Практика использования setTimeout [закрыт]

125
22 ноября 2019, 08:40

Я столкнулся с тем, что мои реализации на основе setTimeout очень нестабильны.

Самая частая проблема - запуск функции на событие скролла, без таймаутов функция запускается на каждый скролл, а с ним работает непредсказуемо. И, насколько я понял, в Chrome и Firefox логика работы таймаутов различается. http://javascript.ru/blog/subzey/firefox-settimeout

У меня возникли вопросы.

  1. Хорошая ли это практика, использовать таймауты?
  2. Что можно использовать вместо них?
  3. Может существуют паттерны, которые позволяют не прибегать к использованию таймаутов?

Объясните, пожалуйста, на каких-нибудь примерах, как делается "по уму", в средних и больших проектах.

Может посоветуете литературу, в которой я смогу найти объяснения с примерами реализаций.

Answer 1
  1. Использовать setTimeout нормальная практика.
  2. На ряду с setTimeout можно использовать setInterval. Но все зависит от задачи поставленной.
  3. Если хотите полное понимание setTimeout и вообще про микротаски то вам нужно понимать event loop. И лучшее объяснение для этого есть у Джейка Арчибальда. посмотрите видео на ютубе.

Так же если вы решаете задачи связанные именно со скролом то есть слушатели событий для этого. Или можно воспользоваться rxJs бибилиотекой есть методы которые создают observable из событий. Так же в таких методых не забывайте о debounce. чтобы не вызвать перегрузки на странице.

READ ALSO
не работает скрипт, ошибок консоль не выдает, все другие скрипты работают

не работает скрипт, ошибок консоль не выдает, все другие скрипты работают

Нужно менять содержимое дива, когда окно меньше 540px

123
FANCYBOX 3 Как добавить уникальный класс?

FANCYBOX 3 Как добавить уникальный класс?

Подключил к галереи fancybox 3, в ней идет первый 3-4 фото а 4 или 5 слайд обзор 3DВот внешний окна фенсибокса где есть вид 3D нужно сделать другим

122
Как реализовать увеличение змейки?

Как реализовать увеличение змейки?

Всем добрый вечерЯ продолжаю писать змейку без использования canvas, игра почти готова, но осталось реализовать довольно сложный процесс - увеличение...

143
Получение Json с сайта

Получение Json с сайта

Как получить Json не логинясь на сайт? Если есть куки при переходе по ссылке сайт выплевывает JSON https://wwwfastgraphs

101