Я изо всех сил пытаюсь получить предмет, чтобы добавить в мою корзину. он показывает мне [объект объекта], даже когда я пытаюсь сделать цикл, он отображает не все мои элементы, которые я добавил, а только последний элемент, который я добавил. Другая проблема заключается в том, что я хочу, чтобы количество элементов было равно -1 от того, что было при каждом добавлении этого элемента в корзину.
Ниже приведена функция, которая берет элементы из моей корзины, которые я уже отфильтровал
и толкает его в вар бе. Примечание: конструктор "обувь" - это то, что входит в мои объекты. ссылка на мой код: https://incrediblejagur.github.io/shopping_catalogue/
function ShoppingCatalogue(shoes) {
var stock;
var price = 0;
var cart = [];
function buildColor() {
var colors = ["color"];
var dataMap = {};
for (var i = 0; i < shoes.length; i++) {
if (dataMap[shoes[i].color] === undefined) {
dataMap[shoes[i].color] = 0;
colors.push(shoes[i].color);
}
}
return colors;
}
function buildBrand() {
var brand = ["brand"];
var dataMap = {};
for (var i = 0; i < shoes.length; i++) {
if (dataMap[shoes[i].brand] === undefined) {
dataMap[shoes[i].brand] = 0;
brand.push(shoes[i].brand)
}
}
return brand;
}
function buildSize() {
var size = ["size"];
var map = {};
for (var i = 0; i < shoes.length; i++) {
for (var z = 0; z < shoes[i].in_stock.length; z++) {
if (map[shoes[i].in_stock[z].size] === undefined) {
map[shoes[i].in_stock[z].size] = 0;
size.push(shoes[i].in_stock[z].size)
}
}
}
return size;
}
function searchShoe(color, size, brand) {
var temp = [];
var colorFilter = shoes.filter(function (col) {
return col.color === color;
})
var brandFilter = colorFilter.filter(function (brnd) {
if(brnd.brand === brand){
price = brnd.price;
}
return brnd.brand === brand;
})
var sizeFilter = brandFilter.filter(function (siz) {
for (var i = 0; i < siz.in_stock.length; i++) {
if (siz.in_stock[i].size == size) {
stock = siz.in_stock[i].stock
}
}
return siz.brand
})
itemCart(brand,color,size,price,stock)
return "We have " + stock + " "+ color + " " + brand + "'s" + " in
size " + size + " @ " + "R" + price + " each";
}
function itemCart(brand,color,size,price,stock){
var c = {
brn: brand,
col: color,
siz: size,
pri: price,
qty: stock
}
cart.push(c)
}
function returnCart(){
var be = [];
for(var i =0;i <cart.length;i++){
var b = cart[i]
be.push(b)
}
console.log(be)
return be;
}