javascript : กรณีอะเรย์มีcolumns ไม่เท่ากัน หา จำนวน columns ที่เยอะที่สุดในแต่ละสมาชิก และ เติม null ให้

กรณีอะเรย์มีcolumns ไม่เท่ากัน หา จำนวน columns ที่เยอะที่สุดในแต่ละสมาชิก และ เติม null ให้สมาชิกที่มีน้อยกว่าให้เท่ากันตัวมากที่สุด (เพื่อให้เป็น array2d ขนาดเท่ากันทั้งหมด
ข้อมูลมันเป็นแบบนี้

var salehistory = [['A001','ITEM1',100],
    ['A001','ITEM2',150],
    ['A002','ITEM1',200],
    ['A003','ITEM2',199],
    ['A001','ITEMO',299]];
var itemslist = [['ITEM1',90],
 ['ITEM2',80],
 ['ITEM3',95]];

var customer = salehistory.filter(row => {return row[0]=='A001'});
console.log(customer);

var pricelist = []; 

for (let i =0; i< itemslist.length ; i++){
 for (let j = 0; j<customer.length; j++){
     console.log(itemslist[i]);
 if (itemslist[i][0] == customer[j][1]) {
 itemslist[i].push(customer[j][2]);
 pricelist.push(itemslist[i]);
 } else {
     pricelist.push(itemslist[i]);
 }
 }
}
console.log(pricelist);

// result : [[ 'ITEM1', 90, 100 ],
//   [ 'ITEM1', 90, 100 ],
//   [ 'ITEM1', 90, 100 ],
//   [ 'ITEM2', 80, 150 ],
//   [ 'ITEM2', 80, 150 ],
//   [ 'ITEM2', 80, 150 ],
//   [ 'ITEM3', 95 ],
//   [ 'ITEM3', 95 ],
//   [ 'ITEM3', 95 ]]

// แต่ที่อยากได้คือ
// [[ 'ITEM1', 90, 100 ],
//  [ 'ITEM2', 80, 150 ],
//  [ 'ITEM3', 95 , null]]

รบกวนแนะนำว่า ต้องปรับตรงไหนทีครับ งง มาหลายวัน

ขอบคุณครับ
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่