Код справа (см.картинку) тоже понятен и надежен. Но он НЕ так явно передает понимание того что и зачем происходит.

Здесь тайм-аут через Promise.race, а сбор данных через Promise.allSettled. Это страшно запутывает код!

Если делать корректно, то нужно убрать таймеры и добавить асинхронный коллектор данных, похожий на Map, который можно использовать в комбинации с async\await синтаксисом. Collector скрывает сложность асинхронного программирования по абстракции высокого уровня, что приводит к понятному и надежному прикладному коду.

Исходный код понятен и надежен, но он не так явно передает намерение и суть происходящего.

#education
Код справа (см.картинку) тоже понятен и надежен. Но он НЕ так явно передает понимание того что и зачем происходит.  
Здесь тайм-аут через Promise.race, а сбор данных через Promise.allSettled | Сетка — новая социальная сеть от hh.ru
repost

81

input message

напишите коммент

Если честно, то оба кода не очень читабельны.

ответить

Однако интересно...

ответить

еще контент автора

еще контент автора

войдите, чтобы увидеть

и подписаться на интересных профи

в приложении больше возможностей

пока в веб-версии есть не всё — мы вовсю работаем над ней

сетка — cоциальная сеть для нетворкинга от hh.ru

пересекайтесь с теми, кто повлияет на ваш профессиональный путь