Working with a JSON data, javascript change the order of the objects from this:
{
"01": { "disabled": 0, "factor": 10, "id": "01", "tickets": 0 },
"02": { "disabled": 0, "factor": 10, "id": "02", "tickets": 0 },
"03": { "disabled": 0, "factor": 10, "id": "03", "tickets": 0 },
"04": { "disabled": 0, "factor": 10, "id": "04", "tickets": 0 },
"05": { "disabled": 0, "factor": 10, "id": "05", "tickets": 0 },
"06": { "disabled": 0, "factor": 10, "id": "06", "tickets": 0 },
"07": { "disabled": 0, "factor": 10, "id": "07", "tickets": 0 },
"08": { "disabled": 0, "factor": 10, "id": "08", "tickets": 0 },
"09": { "disabled": 0, "factor": 10, "id": "09", "tickets": 0 },
"10": { "disabled": 0, "factor": 10, "id": "10", "tickets": 0 },
"11": { "disabled": 1, "factor": 40, "id": "11", "tickets": 0 }
}
To this:
{
"10": { "disabled": 0, "factor": 10, "id": "10", "tickets": 0 },
"11": { "disabled": 1, "factor": 40, "id": "11", "tickets": 0 },
"01": { "disabled": 0, "factor": 10, "id": "01", "tickets": 0 },
"02": { "disabled": 0, "factor": 10, "id": "02", "tickets": 0 },
"03": { "disabled": 0, "factor": 10, "id": "03", "tickets": 0 },
"04": { "disabled": 0, "factor": 10, "id": "04", "tickets": 0 },
"05": { "disabled": 0, "factor": 10, "id": "05", "tickets": 0 },
"06": { "disabled": 0, "factor": 10, "id": "06", "tickets": 0 },
"07": { "disabled": 0, "factor": 10, "id": "07", "tickets": 0 },
"08": { "disabled": 0, "factor": 10, "id": "08", "tickets": 0 },
"09": { "disabled": 0, "factor": 10, "id": "09", "tickets": 0 }
}
Note the "10" and "11" rows at the begin even in the original JSON are at the end.
I fix it with this:
var data = JSON.parse(json_data);
var keys = Object.keys(data).sort();
for ( var k in keys )
{
var key = keys[k];
var row = data[key];
console.log(row);
};
How to prevent javascript from changing the order of the rows?
That ERROR (because it is) made me mad. :-/
Thanks for any help.