I'm dealing with an array of JavaScript objects, like this:
var objectList = [{phone: true},{name: 'room'}]
.
My goal is to store this array in localStorage, retrieve it later, and continue working with the objects it contains.
Here is what I've attempted:
localStorage.setItem('myObject', JSON.stringify(objectList));
objectsList = JSON.parse(localStorage.getItem('myObject'));
However, I encountered an error message:
Uncaught SyntaxError: Unexpected token o in JSON at position 1
at JSON.parse ()
When I tried
console.log(localStorage.getItem('myObject'))
, the output was:
[object Object],[object Object]
And
console.log(typeof localStorage.getItem('myObject'))
returned string
.
How can I properly retrieve and parse the array of objects so that I can work with the objects stored in it?
Thank you!
UPDATE:
var roomsList = [{
category: "ЛЮКС",
cond: true,
wifi: true,
smoke: true,
restrAbility: true,
veranda: true,
kingSizeBed: true,
numFree: 5,
numBusy: 2,
price: 1000,
image: "img/rooms/room0.jpg",
description: "Просторные двухкомнатные люксы с гостиными и уютными спальнями. В оформлении интерьеров использованы предметы антиквариата музейной ценности: мебель, музыкальные инструменты, торшеры и лампы из Богемского стекла - все это рождает уникальный, неповторимый стиль каждого номера. Мраморные ванные комнаты оборудованы гидромассажными ваннами. Все номера данной категории обращены окнами на живописный ансамбль.",
},
{
category: "СТАНДАРТ",
cond: false,
wifi: true,
smoke: false,
restrAbility: false,
veranda: false,
kingSizeBed: false,
numFree: 10,
numBusy: 8,
price: 120,
image: "img/rooms/room0.jpg",
description: "Просторные двухкомнатные люксы с гостиными и уютными спальнями. В оформлении интерьеров использованы предметы антиквариата музейной ценности: мебель, музыкальные инструменты, торшеры и лампы из Богемского стекла - все это рождает уникальный, неповторимый стиль каждого номера. Мраморные ванные комнаты оборудованы гидромассажными ваннами. Все номера данной категории обращены окнами на живописный ансамбль.",
}]
and so on.. (14 objects in the array) All other logic and outputs are the same as I described earlier:
var roomsObject = localStorage.getItem('roomsObject');
if (!roomsObject) {
localStorage.setItem('roomsObject', JSON.stringify(roomsList));
}
roomsList = JSON.parse(localStorage.getItem('roomsObject'));