Внешний или встроенный JavaScript?- Время загрузки страницы - PullRequest
2 голосов
/ 28 сентября 2010

Будет ли страница загружаться быстрее, если я сохраню весь свой JavaScript в отдельном файле, скажем MyCode.js, и включу этот файл, а не включу JavaScript в html-файл?

Или это не имеет значения?

Ответы [ 4 ]

5 голосов
/ 28 сентября 2010

Это очень редко имеет значение для скорости, если вы не Google.Однако для удобочитаемости и удобства сопровождения гораздо лучше хранить JavaScript во внешних файлах.

Если вы поместите теги <script> в конец страницы (непосредственно перед закрывающим тегом <body>), JavaScriptне блокирует загрузку страницы.

3 голосов
/ 28 сентября 2010

Существуют преимущества как для встроенных, так и для включенных файлов сценариев.

Встроенные сценарии загружаются с HTML, поэтому для загрузки требуется только один HTTP-запрос, что экономит время, полученный HTML-файл будет больше, но выне тратьте время на рукопожатие и заголовки.

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

Как правило, включайте встроенные сценарии, где бы эти сценарии не относились непосредственно к содержимому запрашиваемой страницы, вы сохраните HTTP-запросы для страницы и вам не нужнокэшируйте скрипты отдельно.Для сценариев всего сайта всегда включайте их в виде отдельных файлов сценариев, они будут загружены сразу после первой необходимости, а затем для последующих страниц будет использоваться кэшированная копия.

2 голосов
/ 28 сентября 2010

Если у вас много сценариев, некоторые из них можно сохранить, сохранив js во внешних файлах, поскольку это позволяет браузеру лучше выполнять кэширование ваших файлов сценариев. То же самое касается CSS.

Но в общем, мех. Очевидным преимуществом экстернализации является ремонтопригодность.

1 голос
/ 28 сентября 2010

В зависимости от размера кода JS.Если у вас огромная часть JS-кода, то помещение всего в отдельности имеет несколько плюсов:

  • Вы можете разделить файлы разных типов по разным доменным именам, что может увеличить время загрузки страницы - тогда как большинство браузеров ограничивают4 одновременных подключения к одному домену.

  • Поддерживать проще

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