JSFiddle - React, Tailwind, and code Playground
JavaScript
var originalArray = [
{
"_id": {
"data": "90 - 180",
"status": "Non Performing"
},
"value": 1759908
},
{
"_id": {
"data": "360",
"status": "Written-off"
},
"value": 77146
},
{
"_id": {
"data": "360",
"status": "Non Performing"
},
"value": 280235
},
{
"_id": {
"data": "30 - 90",
"status": "Substandard"
},
"value": 863825
},
{
"_id": {
"data": "30 - 90",
"status": "Performing"
},
"value": 697370
},
{
"_id": {
"data": "180 - 360",
"status": "Non Performing"
},
"value": 890857
},
{
"_id": {
"data": "0 - 30",
"status": "Performing"
},
"value": 1028717
},
{
"_id": {
"data": "0",
"status": "Performing"
},
"value": 1941404
}
];
var newArray = [
{
'name': 'Performing',
'data': []
},
{
'name': 'Non Performing',
'data': []
},
{
'name': 'Substandard',
'data': []
},
{
'name': 'Written-off',
'data': []
}
];
for (var x = 0; x < originalArray.length; x++) {
if (originalArray[x]._id.status === 'Performing') {
for (var y = 0; y < newArray.length; y++) {
if (newArray[y].name === 'Performing') {
newArray[y].data.push(originalArray[x]._id.data)
}
}
} else if (originalArray[x]._id.status === 'Non Performing') {
for (var y = 0; y < newArray.length; y++) {
if (newArray[y].name === 'Non Performing') {
newArray[y].data.push(originalArray[x]._id.data)
}
}
} else if (originalArray[x]._id.status === 'Substandard') {
for (var y = 0; y < newArray.length; y++) {
if (newArray[y].name === 'Substandard') {
newArray[y].data.push(originalArray[x]._id.data)
}
}
} else if (originalArray[x]._id.status === 'Written-off') {
for (var y = 0; y < newArray.length; y++) {
if (newArray[y].name === 'Written-off') {
...