Добрый день.
Столкнулся со странным поведением функции (возможно, из-за недостатка знаний), прошу помочь.
function user_list_product_count(id) {
// получаем количество товара в списке пользователя
let temp = localStorage.getItem('user_list');
if((typeof temp !== 'undefined') && (temp !== null) && (temp.length > 0)) {
temp = JSON.parse(temp); // разобрали по строкам
temp.forEach(function(item, index) {
item = JSON.parse(item);
console.log('id = ' + id + ' item._source.product_id = ' + item._source.product_id)
if(item._source.product_id == id) {
console.log('Нашли, количество: ' + item.quantity);
console.log(item.quantity)
return item.quantity;
}
});
}
}
так вот: условие отрабатывает, console.log(item.quantity) выводит число, но функция возвращает undefined.
Пример: если item.quantity = 3, то почему функция по команде "return item.quantity" возвращает undefined вместо 3?
Почему так может быть?