Встречается на собеседованиях • сегодня
Кэшировал ли через Service Worker
Да, работал с Service Worker для кэширования ресурсов. Регистрируем SW, затем в событии install кэшируем статические файлы, а в fetch — перехватываем запросы и возвращаем из кэша, если есть.
Пример:
javascript
// Регистрация
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/sw.js');
}
// sw.js
const CACHE_NAME = 'v1';
const urlsToCache = ['/', '/styles.css', '/script.js'];
self.addEventListener('install', (event) => {
event.waitUntil(
caches.open(CACHE_NAME)
.then(cache => cache.addAll(urlsToCache))
);
});
self.addEventListener('fetch', (event) => {
event.respondWith(
caches.match(event.request)
.then(response => response || fetch(event.request))
);
});
text
**Нюансы:**
- Кэш обновляется только при изменении SW (новый файл или хэш).
- Для динамического контента можно использовать стратегию `Cache then Network`.
- Очистка старого кэша через `activate` (например, при обновлении версии).
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы