Сообщение от pokk
|
О благодарю много нового узнал, правильный подход это использование
asynс функций с await вместо цепочки промиксов?
|
В принципе то да, но asynс/await пока не везде доступны, а потому если вы ещё не используете транспайлер вам придётся изучить ещё и данный вопрос. Если же обойтись без транспайлера, то цепочки промисов сами по себе достаточно наглядны и удобны.
Сообщение от ksa
|
Просто чел решил сэкономить на
if (timerId) {};
|
А в итоге дописал лишних 4 символа.) clearTimeout вызывается с любой чушью(приводимой к number без exception) в качестве аргумента(или вовсе без оного), по историческим причинам.
Сообщение от SuperZen
|
... но, все равно, там должен быть setInterval вместо setTimeout...
|
Неа, setInterval - он только для очень узких случаев.
И хотя данный конкретный код технически можно было бы заменить на setInterval, но только потому что сам код ошибочен.
Тут, как и в случае с setInterval: если GetJson займёт более 100мс, то одновременные вызовы будут накапливаться пока не станет совсем грустно. Правильный подход вызывать следующий setTimeout только после того как GetJson гарантировано отработал(в данном случае в коллбэке).