у меня есть массив,который я беру из localStorage с помощью такого кода
function loadCart(data) {
//проверяю есть ли в localStorage запись cart
if (localStorage.getItem('cart')) {
// если есть - расширфровываю и записываю в переменную cart
cart = JSON.parse(localStorage.getItem('cart'));
if(isEmpty(cart)){
$('.main-cart').html('Корзина пуста');
}
else init();
}
else {
$('.main-cart').html('Корзина пуста');
}
}
после этого загружаю ассоциативный массив с товарами из бд
function init(){
$.post(
'pages/adminPage/core.php',
{
"action":"loadGoods"
},
showCart
);
}
и вывожу товар из localStorage
function showCart(data) {
var pack= JSON.parse(data);
var out = '';
for (var id in cart) {
for (key in pack) {
if(id===pack[key].id){
out += `<button data-id="${id}" class="del-goods">x</button>`;
out += `<img src="pages/orderPage/goods/${pack[key].img}"
width='50em' height='50em'>`;
out += ` ${pack[key].name }`;
out += ` <button data-id="${id}" class="minus-goods">-
</button> `;
out += ` ${cart[id]} `;
out += ` <button data-id="${id}" class="plus-goods">+
</button> `;
out += cart[id]*pack[key].cost;
out += '<br>';
}
}
}
$('.main-cart').html(out);
$('.del-goods').on('click', deleteGoods);
$('.plus-goods').on('click', plusGoods);
$('.minus-goods').on('click', minusGoods);
}
Проблема в том,что когда я выполняю ф-цию minusGoods
function minusGoods(){
//уменьшает товар в корзине на 1
var id = $(this).attr('data-id');
if (cart[id]===1){
delete cart[id];
}
else cart[id]--;
saveCart();
showCart();
}
вылетает эта ошибка Uncaught SyntaxError: Unexpected token u in JSON at position 0
Не понимаю в чем может быть проблема,ведь такая же ф-ция plusGoods и deleteGoods у меня срабатывают