I noticed that certain code that evaluates some shoe sizes for an e-commerce site and outputs them on screen is messing up the order in Chrome.
JSON given can be:
It would appear that Chrome is treating the integer string as if it were a numeric type when used as an index/property name.
I think relying on the Javascript implementation to preserve the order of what, in some cases, is object properties, and in other cases (certainly with chrome) array indices, is demonstrably an unsafe approach and order of enumeration is probably not defined in the spec. I would suggest adding an additional property to the JSON that indicates a sort order:
{
"7":{"sortOrder":1,"data":["9149","9139","10455","17208"]},
"7.5":{"sortOrder":2,"data":["9140","9150","10456","17209"]}
//etc
}