Я бы советовал повесить data атрибуты для каждого
catalog-item
по типу
<div
class="catalog-item"
data-name="Коробка бурая + бурое дно"
data-size="230*170*90мм"
data-price="120"
data-number="1"
>
...
</div>
И делегировать обработку покупки на
catalog-item
:
const catalogItems = document.querySelectorAll('.catalog-item');
const basketList = document.querySelector('.basket__list');
catalogItems.forEach((catalogItem) => {
catalogItem.addEventListener("click", (e) => {
if (e.target.classList.contains("catalog-item_basket") {
const {name, size, price, number} = catalogItem.dataset;
const basketItem = document.createElement('div');
basketItem.innerHTML = `
<div class="basket__item">
<img src="img/boxes/image6.jpeg" alt="box" class="basket__item-image">
<div class="basket__item_wrapper">
<div class="basket__item-name">${name}</div>
<div class="basket__item-size">${size}</div>
<div class="basket__item-price">${price}</div>
<div class="basket__item-number">${number}</div>
</div>
</div>
`;
basketList.append(basketItem);
}
})
})