> Какие данные (примитивы или объекты) можно хранить в localStorage (JavaScript)
Уровень: middle · Роль: frontend · Категория: Технические вопросы
Компании: IT-One
Стек: JavaScript
> Пример ответа
В localStorage можно хранить только строки. Все данные, которые вы туда помещаете (числа, булевы значения, объекты, массивы, null, undefined), автоматически преобразуются в строку с помощью метода toString(). Например, число 42 станет строкой "42", а объект {a: 1} - строкой "[object Object]".
Для хранения сложных структур данных (объектов, массивов) необходимо использовать JSON.stringify() при записи и JSON.parse() при чтении. Примитивы, такие как строки, числа, булевы значения, можно хранить напрямую, но при извлечении они всё равно будут строками - потребуется явное приведение типов (например, Number() или parseInt()).
undefined и функции не могут быть корректно сохранены: undefined превратится в строку "undefined", а функция - в "function f() {}", что бесполезно. Symbol также не поддерживается.
Таким образом, фактически localStorage - это хранилище строк, и для работы с другими типами данных нужна ручная сериализация.
> Похожие задачи по frontend
Как отсутствие собственного this у стрелочной функции влияет на вызов методов в JavaScript?
Почему this динамический в JavaScript и когда он определяется
Какие коллекции кроме Set существуют в JavaScript
Куда пойдет выполнение после запуска промиса в JavaScript
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью