I have a little problem with this logic. I need to create a dynamic Array of Array. But the last object in every Array is not correct. I try some way but still not found expected result.
Here the snippet code :
const data = [{
"order-nr": 1,
"article": "Burger"
}, {
"order-nr": 1,
"article": "Soup"
}, {
"order-nr": 1,
"article": "Noodle"
}, {
"order-nr": 2,
"article": "Steak"
}, {
"order-nr": 2,
"article": "Chicken Wings"
}, {
"order-nr": 3,
"article": "Coffee"
}, {
"order-nr": 4,
"article": "Rice"
}]
let tempDataArticle = [];
let dataArticle = [];
let orderNr = 1;
let indexOrderNr = 0;
for (let i = 0; i < data.length; i++) {
const datarow = data[i];
dataArticle.push(datarow);
if (datarow['order-nr'] === orderNr) {
tempDataArticle[indexOrderNr] = dataArticle;
} else {
tempDataArticle[indexOrderNr] = dataArticle;
orderNr = orderNr + 1;
dataArticle = [];
indexOrderNr = indexOrderNr + 1;
}
}
console.log((tempDataArticle));
Output :
[
[{
"article": "Burger",
"order - nr": 1
}, {
"article": "Soup",
"order - nr": 1
}, {
"article": "Noodle",
"order - nr": 1
}, {
"article": "Steak",
"order - nr": 2
}],
[{
"article": "Chicken Wings",
"order - nr": 2
}, {
"article": "Coffee",
"order - nr": 3
}],
[{
"article": "Rice",
"order - nr": 4
}]
]
Here reproduce code.
Expected Result :
[
[{
"article": "Burger",
"order - nr": 1
}, {
"article": "Soup",
"order - nr": 1
}, {
"article": "Noodle",
"order - nr": 1
}],
[{
"article": "Steak",
"order - nr": 2
}, {
"article": "Chicken Wings",
"order - nr": 2
}],
[{
"article": "Coffee",
"order - nr": 3
}],
[{
"article": "Rice",
"order - nr": 4
}]
]
My expected result there is 4 Array base on order-nr key. So the total sub Array will depend on order-nr key.
order-nrkey.