Во время записи большинство браузеров возвращали свойства в том же порядке, в каком они были вставлены, но это явно не гарантированное поведение, поэтому на него не следует полагаться.
Спецификация ECMAScript говорила:
Механика и порядок перечисления свойств ... не указаны.
blockquote>Однако в ES2015 и более поздние нецелые ключи будут возвращены в порядке вставки.