setPrice в getPrice - это странно :-)
Ты должна хранить категорию продукта в отдельном data-* атрибуте (или все продукты в одной категории). Тогда ты потом сможешь легко получить цену на товар
price[catName][productName]
UPD: Т.е. получится вот так
<li class="calculator calculator--checked" data-category="meat" data-value='свинина'>свинина</li>
getPrice(t){
let item = t.closest('.wrap').querySelectorAll('.calculator--checked');
this.arr = [];
let totalPrice = 0;
for(let i = 0; i < item.length; i++){
let product = item[i].getAttribute('data-value');
let category = item[i].getAttribute('data-category');
totalPrice += +price[category][product];
}
return totalPrice; // в totalPrice итоговая цена.
}
Вроде так. Еще замечание, data атрибуты следует брать с
datasetlet product = item[i].dataset.value; // префикс data- упускаем.
Если название атрибута тип data-category-name (т.е. через дефис), то нужно писать в верблюжий нотации
item[i].dataset.categoryName
ну или просто по индексу
item[i].dataset['category-name']