Расскажи про cookies, sessionStorage, localStorage, IndexedDB
Ответ от нейросети
sobes.tech AI
Cookies — небольшие данные, которые сервер отправляет браузеру и которые браузер сохраняет и отправляет обратно при последующих запросах к тому же домену. Используются для аутентификации, отслеживания сессий и хранения пользовательских настроек. Имеют ограничения по размеру (~4KB) и могут быть настроены с флагами безопасности (HttpOnly, Secure).
sessionStorage — объект веб-хранилища, доступный в браузере, который хранит данные в рамках одной сессии вкладки. Данные удаляются при закрытии вкладки или окна. Используется для временного хранения данных, которые не должны сохраняться между сессиями.
localStorage — также объект веб-хранилища, но данные сохраняются без срока действия, пока не будут удалены программно или пользователем. Позволяет хранить до нескольких мегабайт данных в браузере. Используется для хранения настроек, кеша и другой информации, которую нужно сохранить между сессиями.
IndexedDB — более сложная и мощная база данных в браузере, позволяющая хранить структурированные данные (объекты, файлы) в виде ключ-значение. Поддерживает транзакции, индексы и запросы. Используется для офлайн-приложений и хранения больших объемов данных.
Пример использования localStorage:
localStorage.setItem('theme', 'dark');
const theme = localStorage.getItem('theme');