Pull to refresh
25
0
Anatolii Kurochkin @anatoliy841993

Senior Software Engineer @Lyft

Send message
спасибо за комментарий! знания про то как работает браузер и последовательность и приоритетность работы event loop важна не только для разработки высоконагруженных приложений
движки работают по-разному разве что на цикле render и requestAnimationFrame (может еще меняться их порядок :D), в остальных случаях все практически одно и то же
давайте по порядку выполним ваш фрагмент кода:
— первым делом ставится в очередь задача от Tasks — run script
— помещается в очередь Tasks queue коллбек setTimeout
— помещается в очередь Microtasks queue коллбек Promise
— завершается задача Tasks run script после выполнения цикла
— выполняются задачи от Microtasks (они идут после Tasks)
— происходит цикл рендеринга
— снова возвращаемся к задачам от Tasks где есть коллбек нашего таймаута и кидаем его в callStack
— все)
не совсем с вами согласен, это может быть полезно не только с рендерингом, React давно использует raf, вот пример из RN
facebook.github.io/react-native/docs/performance#my-touchablex-view-isn-t-very-responsive
Почему используете setInterval когда для плавных анимаций есть requestAnimationaframe?
Я ниже при разборе решения написал что изменил число итераций на конечное число) Вы можете сделать например так:
for (let i = 0; i < 10000; i += 1) {
	Promise.resolve().then(() => console.log('I am microtask'));
}

И при запуске профайла все будет ок

Читал ее. Согласен, хорошая статья

Согласен, поправил. Спасибо за замечание
Рад, что вам понравилось) добавил комментарий
В этой статье я постараюсь подробно разобрать механизм реализации замыканий в JavaScript
я не зря же это написал в начале статьи) если она показалась вам сложной, то интернет полон поверхностных статей, прочитав которые вы прекрасно сможете с этим работать.
спасибо за замечание, изначально не хотел писать про это, в итоге оставил, да еще и с ошибкой) устранил неточность
Резонно, поправил, спасибо за подробный комментарий
Рад, что вам понравилось, спасибо) Чуть позже добавлю ссылки
Согласен, добавил в статью, спасибо

Information

Rating
Does not participate
Location
San Francisco, California, США
Date of birth
Registered
Activity