Выбор ответа Junior Хранилища обновлено

Объект в localStorage без JSON

Вопрос

Что выведет код?

localStorage.setItem('user', { name: 'Ann' });
console.log(localStorage.getItem('user'));

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: [object Object]. Web Storage хранит только строки и приводит значение через String(), а у обычного объекта это [object Object].

Варианты ответа

  1. { name: 'Ann' }
  2. '{"name":"Ann"}'
  3. [object Object]правильный ответ
  4. Ошибка TypeError

Разбор

Web Storage хранит только строки и приводит значение через String(), а у обычного объекта это [object Object]. Объект не сохраняется как есть, и автоматической сериализации в JSON нет: её делают руками через JSON.stringify. Ошибки тоже не будет, приведение проходит молча.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме