Как я могу «сократить время выполнения JavaScript» внешних скриптов? - PullRequest
0 голосов
/ 22 ноября 2018

У меня такое чувство, что я мало что могу сделать, но я решил задать вопрос и посмотреть, пропустил ли я что-то.

Как я могу «сократить время выполнения JavaScript» внешних сценариев?

Когда я использую инструмент PageSpeed ​​Insights, мой текущий результат равен 56, и одна из самых больших проблем, кажется, проблемасо временем выполнения некоторых внешних скриптов.И их кеширование ... но это другая проблема.

https://load.sumo.com Всего: 733 мс Оценка сценария: 587 мс Анализ синтаксиса: 128 мс

https://sumo.b -cdn.net/virtual/####/client/js/services/services.js Всего: 436 мс Оценка сценария: 212 мс Анализ сценария: 90 мс

https://connect.facebook.net/signals/config/###?v=2.8.33&r=stable Всего: 215 мс Оценка сценария: 160 мс Анализ сценария: 53 мс

https://static.leadpages.net/leadboxes/current/embed.js Всего: 133 мс Оценка сценария: 123 мс Анализ синтаксиса: 10 мс

...

1 Ответ

0 голосов
/ 22 ноября 2018

Вы не будете иметь никакого контроля над тем, что делают эти внешние скрипты.Если не учитывать их, единственное, что вы можете сделать, это отложить их загрузку.

Один из способов сделать это - использовать атрибут defer.

<script defer src="https://example.com/script.js"></script>

Это позволяет странице продолжать загружаться и выполняться, пока скрипт загружается и выполняется позже.Этот метод не работает со всеми сценариями, но он будет работать с большинством.Многие теги сценариев, которые вы включаете от провайдеров, таких как Facebook, уже будут иметь альтернативный код, который откладывает их загрузку.

См. Также: https://flaviocopes.com/javascript-async-defer/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...