Файлы JavaScript не являются особыми. Так же, как изображения, таблицы стилей и файлы HTML, они запрашиваются при необходимости браузером по необходимости.
И поэтому применяются те же методы для минимизации повторного извлечения их. Браузер может повторно использовать свою кешированную копию файла, если вы настроите свой веб-сервер для установки соответствующих заголовков кеширования при ответе на данные файла (при условии, что у браузера все еще есть копия).
Вы можете увидеть пример этого на сайте Google Libraries. Если вы запрашиваете определенную версию файла библиотеки (скажем, jQuery 1.10.1), когда ваш веб-консоль открытой вкладки сети, вы увидите, что Google возвращает его с этими заголовками (нерелевантных из них опущен):
Age: 238894
Cache-Control: public, max-age=31536000
Date: Thu, 09 Jan 2014 20:47:08 GMT
Expires: Fri, 09 Jan 2015 20:47:08 GMT
Last-Modified: Tue, 09 Jul 2013 11:31:25 GMT
Примечания что файл может быть кэширован без повторной аттестации в течение года. Поэтому, если пользователь обновляет страницу, браузер может повторно использовать свою кешированную копию (если она есть). (Это не, что Google делает, если вы используете один из шаблона «любой версии JQuery 1.10» URL-адресов, так как, конечно, изменения версии Кончик ...)
Некоторые браузеры могут обойти их кэш с обновлением (особенно «сила», например, Ctrl + F5). В этом случае они могут по крайней мере отправить запрос If-Modified-Since
.
Будут обновлены только клиентские вещи, серверные файлы будут делать то, что говорит сервер. –
Вы действительно наблюдали и испытывали проблемы с этим? – JAL
@JAL нет, я просто изучаю и думаю об этом. Я думал, что обновление страницы означает, что все файлы снова запрашиваются. – user1492051