Страницы

Поиск по вопросам

пятница, 20 декабря 2019 г.

Что означает эта ошибка: [Violation] Forced reflow while executing JavaScript took 54ms?

#javascript #google_chrome


В консоли Google Chrome если выбрать уровень Verbose
    


Ответы

Ответ 1



Начнем с того что это не ошибка. Это предупреждение, избавление или неизбавление от которого на вашей совести. Уровень "Verbose" в консоли позволяет проще находить узкие места в производительности, другими словами почему все так тупит. Обычно это код который поставленную задачу решает, но можно сделать его значительно оптимальнее. Так вот, одним из убийц производительности в js является неаккуратное манипулирование DOM, потому что можно вызвать перерисовку того что перерисовывать не надо. В тяжелом случае это так называемый layout thrasing. В данном конкретном случае ворнинг говорит вам, что на js произошло что-то что повлекло за собой значительную перестройку структуры страницы без явной для отладчика причины и рассказывает сколько это заняло. Кстати это не обязательно плохо, бывает от этого сложно отказаться. Для того чтобы понимать как и когда браузеры решают что-то перерисовать, что такое repaint и reflow, рекомендую познакомиться с этой статьей. В общем вам этим сообщением подсказывают цель для тюнинга производительности.

Комментариев нет:

Отправить комментарий