Встречается на собеседованиях • сегодня

Как можно сделать кэширование

Кэширование на фронтенде можно реализовать несколькими способами:

  1. LocalStorage/SessionStorage
    Подходит для хранения небольших объемов данных (до 5-10 МБ). Пример:
    javascript
    // Сохранение
    localStorage.setItem('cachedData', JSON.stringify(data));
    
    // Получение
    const cachedData = JSON.parse(localStorage.getItem('cachedData'));
  1. Service Worker + Cache API
    Для кэширования ресурсов и API-запросов:

    javascript
    // В service worker
    self.addEventListener('fetch', (event) => {
      event.respondWith(
        caches.match(event.request).then((response) => {
          return response || fetch(event.request);
        })
      );
    });
  2. Мемоизация
    Кэширование результатов функций:

    javascript
    const memoize = (fn) => {
      const cache = {};
      return (...args) => {
        const key = JSON.stringify(args);
        return cache[key] || (cache[key] = fn(...args));
      };
    };
  3. HTTP-кэширование
    Использование заголовков (Cache-Control, ETag).

Для API-запросов часто используют комбинацию: сначала проверяют кэш (LocalStorage), затем делают запрос с обновлением кэша.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы