[Javascript] Object property order

Zhentiw發表於2024-10-14

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 abefore 1, 2, 1,2will be moved before a

Secondly, even you add 2before 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'}

相關文章