Лаги при использовании requestAnimationFrame

340
09 августа 2017, 22:21

Почему при использовании в коде (пример) конструкции

requestAnimationFrame(function draw() {
  ...
  requestAnimationFrame(draw);
});

периодически возникают лаги по 300 мс, в которые Хром ничего не делает?

Обращаю внимание, что профайлер умеет показывать сборку мусора, но на этих участках она не отображается:

Скринвидео. Скринвидео записано независимо от таймлайнов (таймлайны делались на чистой странице, а не для сниппета). Скринвидео стоит скачать, а не смотреть онлайн, поскольку при онлайн-просмотре значительно ухудшается качество.

Answer 1

Думаю все дело в движке v8. Более подробно есть описание тут. Думаю необходимо вынести анимацию отдельно а функцию расчета координат отдельно, скорее всего пауза уйдет.

READ ALSO
Заменить буквы на цифры в js

Заменить буквы на цифры в js

Мне надо поменять все буквы в строке по шаблону из массиваНачал, но не смог продолжить

932
Сделать код синхронным

Сделать код синхронным

Помогите сделать код синхронным

353
You may need an appropriate loader to handle this file type

You may need an appropriate loader to handle this file type

Вылетает ошибка в webpack при попытке срендерить этот код:

670
Как взять высоту одного блока и присвоить её другому? jQuery

Как взять высоту одного блока и присвоить её другому? jQuery

Собственно нужно брать высоту одного блока и при загрузке документа присваивать его другомуКак это можно реализовать ?

528