각 제품군마다 판매실적을 종합하여 chart에 올려야 되는 상황이 발생했다고 가정해보자.
아래는 다루어야 할 데이터다.
const product = [
{ description: '전자제품', price: 500, updatedAt:... etc },
{ description: '가전제품', price: 400, updatedAt:... etc },
{ description: '한정제품', price: 300, updatedAt:... etc },
{ description: '가전제품', price: 200, updatedAt:... etc },
{ description: '전자제품', price: 400, updatedAt:... etc },
];
여러가지 정보들이 담겨 있을 수 있겠지만,
필요한것은 각 제품군의 항목이름과 가격이다.
필터링 할 제품군과 가격을 객체배열로 생성하고 2중 포문으로 작성하면 쉽게 구할 수 있다.
const result = [];
const filterWordArray =[
{description:'전자제품',price:0},
{description:'가전제품',price:0},
{description:'한정제품',price:0}
]
const productTotalPrice = () => {
for(let i = 0; i< product.length; i++){
for(let j = 0; j < filterWordArray.length; j++){
if(product[i].description === filterWordArray[j].description){
filterWordArray[j].price += product[i].price
}
}
}
};
productTotalPrice()
// result
//(3) [{…}, {…}, {…}]
// 0: {product: '가전제품', price: 600}
// 1: {product: '전자제품', price: 900}
// 2: {product: '한정제품', price: 300}