Как уже говорили другие люди, когда вы помещаете javascript в заголовок, он задерживает рендеринг страницы до тех пор, пока не загрузятся скрипты, что означает, что загрузка страницы может занять больше времени - особенно если вы загружаете большие файлы скриптов. 1001 *
Если вы переместите теги сценариев в конец страницы, вы убедитесь, что браузер загружает изображения и таблицы стилей до того, как теги сценариев будут отображаться, и страница, скорее всего, будет отображаться до запуска сценариев. Это также означает, что если вы зависите от некоторых функций из ваших сценариев, это будет недоступно до тех пор, пока страница не станет видимой пользователю.
Если вы добавляете стили или элементы (и т. Д. Переключаете текстовые поля с помощью более богатого редактора), это будет отображаться пользователю как мерцание.
Если вы добавляете события click к элементам, они не будут активны до тех пор, пока не станут видны сами элементы.
Иногда эти проблемы требуют, чтобы вы поместили свои сценарии в голову, в других случаях вам будет хорошо, вставив их внизу.
ИМХО (полностью против YSlow и множества умных людей), вы должны держать свои скрипты в теге head и просто полагаться на то, что они будут кэшироваться большую часть времени.