I have an array of objects where I need to change the order of the keys. e.g.
let data = [
{
"Summer": "green",
"Winter": "white",
"Spring": "yellow",
"Autumn": "orange",
"Total": 0,
"Number": 0,
"Difference": 0
},
{
"Summer": "green",
"Winter": "white",
"Spring": "yellow",
"Autumn": "orange",
"Total": 0,
"Number": 0,
"Difference": 0
},
]
what I want to achieve is:
let updated = [
{
"Total": 0,
"Number": 0,
"Summer": "green",
"Spring": "yellow",
"Autumn": "orange",
"Winter": "white",
"Difference": 0
},
{
"Total": 0,
"Number": 0,
"Summer": "green",
"Spring": "yellow",
"Autumn": "orange",
"Winter": "white",
"Difference": 0
}
]
I have tried cloning into a new array with the order I want and also object.assign
which doesn't give me the expected result.
let newArr = [];
for (let i in data) {
newArr.push(
data[i].Total,
data[i].Number,
data[i].Summer,
data[i].Spring,
data[i].Autumn,
data[i].Winter,
data[i].Difference
)
}
does not work as exptected and also
const objectOrder = {
'Total': null,
'Number': null,
'Summer': null,
'Spring': null,
'Autumn': null,
'Winter': null,
'Difference': null,
}
for (let i of data) {
const addObjectResource = Object.assign(objectOrder, data[i]);
newArr.push(addObjectResource)
}