I'm just learning Javascript and need to build a cart. I am using a drop-down menu to select the items which are stored in another array. I then want to push the selected item to an empty array called "cart"
This is the code I'm using to select the data from the catalog array inorder to push it to the cart array:
let addFCat = document.getElementById('addfromCat');
function cat_Cart(){
// find out the index of the item loaded
let e = document.getElementById("productList");
let itemIndex = e.options[e.selectedIndex].value;
console.log(itemIndex);
// update item to cart
cart.push(catalog[itemIndex]);
localStorage.setItem("cart", JSON.stringify(cart));
// alert with updated total
// alert(`You added ${cartItems.name} to your Cart`)
}
But for some reason my cart[] remains empty.
If I manually type: cart.push(catalog[enter index here]) in the console, and then: cart.length; the cart updates. What am I doing wrong, that it won't update my cart within the function?
(PS. I'm using the console.logs to check the code is running)
cat_Cartfunction. How are you logging/checking the contents ofcartafter you push to it?console.log(catalog[itemIndex])to print the content ofcatalog[itemIndex]for debugging.[]or does it contain something like[undefined]or[null]?