Sign in
Log inSign up

Create an array of objects from LocalStorage

andyshah's photo
andyshah
·Apr 27, 2019

I build an array of objects in Javascript then store that in LocalStorage. I want to now rebuild that when the user returns.

So to start with:

var cartItems = {};
var items = []
cartItems.items = items;

I push, update as and when required. So I end up with an array like this:

{"items":[{"name":"Bronze Car","price":2.99,"quantity":1},{"name":"Paris Delight","price":3.99,"quantity":1},{"name":"Lamp Frost","price":5.8,"quantity":2}]}

Write to LocalStorage:

localStorage.setItem('productsInCart', JSON.stringify(cartItems));

The difficulty I am having is setting the cartItems to that above array if LocalStorage exists. I was hoping it would be like this:

if (localStorage.getItem("productsInCart") === null) {
var cartItems = {};
var items = []
cartItems.items = items;
}
else
{
var cartItems = JSON.parse(localStorage.getItem("productsInCart"));

Then I could just continue pushing and updating etc. But that does not work, how can I recreate the cartItems structure and set it to cartItems so I can push etc.

I would then push items to that array as objects.

var item = {
"name": name,
 "price": price,
 "quantity": quantity
}
cartItems.items.push(item);
Hassle-free blogging platform that developers and teams love.
  • Docs by Hashnode
    New
  • Blogs
  • AI Markdown Editor
  • GraphQL APIs
  • Open source Starter-kit

© Hashnode 2024 — LinearBytes Inc.

Privacy PolicyTermsCode of Conduct