For Javascript Object, you cannot assume the order of Object property the same as the order of adding those property.
The actual order follow this rule
- If it's '1', '2', sorted asec and move forward to the beginning
var obj = {}
obj.a = 'a'
obj['2'] = '2'
obj['1'] = '1'
console.log(obj) // {1: '1', 2: '2', a: 'a'}
As you can see, even you add a
before 1, 2
, 1,2
will be moved before a
Secondly, even you add 2
before 1
, it will be sorted according to asce order.
- If it's a-z, according to the order of adding those property ; and it's not case sensitive
var obj = {}
obj.w = 'w'
obj.a = 'a'
obj.n = 'n'
console.log(obj) // {w: 'w', a: 'a', n: 'n'}