Size: a a a

JavaScript Developers

2017 September 14

α

αμαν in JavaScript Developers
самое неочевидное тут это порядок чтения свойств объекта - не уверен что в другом движке он гарантирован
источник

VZ

Vladimir Zhid in JavaScript Developers
Да с true в начале как-то не понятно
источник

α

αμαν in JavaScript Developers
писал я (не девушка, ваще че за предрассудки!), взял пример из https://github.com/istarkov/es6-wows
источник

VZ

Vladimir Zhid in JavaScript Developers
Про девушку.. это шутка) про извращенность)
источник

α

αμαν in JavaScript Developers
про порядок конечно там ни слова
источник

VZ

Vladimir Zhid in JavaScript Developers
Хотя вполне понятно... непривычно просто
источник

VZ

Vladimir Zhid in JavaScript Developers
Плюс в примере все-же нету дефолтного true, а гарантированна последовательность ключей или нет..  не для всех явно
источник

α

αμαν in JavaScript Developers
дефолтный тут [true]: path
источник

VZ

Vladimir Zhid in JavaScript Developers
Имелось ввиду в этом примере: https://github.com/istarkov/es6-wows
источник

α

αμαν in JavaScript Developers
аа, да, собственное за этим и кроется сюрприз с очередью ключей
источник

α

αμαν in JavaScript Developers
в эдж работает так же, хотя может это бессмысленно проверять после транспайла
источник

VZ

Vladimir Zhid in JavaScript Developers
"Соглашение говорит, что если имя свойства – нечисловая строка, то такие ключи всегда перебираются в том же порядке, в каком присваивались. Так получилось по историческим причинам и изменить это сложно: поломается много готового кода." Но я бы в if-else обернул)
источник

α

αμαν in JavaScript Developers
откуда это?
источник

VZ

Vladimir Zhid in JavaScript Developers
Здесь скопировал: https://learn.javascript.ru/object-for-in
источник

VZ

Vladimir Zhid in JavaScript Developers
Правда ли, что при переборе for(key in codes) ключи key будут перечислены именно в том порядке, в котором заданы?

По стандарту – нет. Но некоторое соглашение об этом, всё же, есть.
источник

VZ

Vladimir Zhid in JavaScript Developers
Есть еще такое... и спустя время в голове немного путается) Лично для меня.. тем более если ты не только с js работаешь)
источник

α

αμαν in JavaScript Developers
бабель будет перезаписывать поля obj.true и obj.false так что порядок будет обратный свич-кейсу и не зависит от движка
источник

α

αμαν in JavaScript Developers
перезаписывать в порядке объявления - поэтому последний [true]: value однозначно переписал бы поле true (т.е. результат)
источник

VZ

Vladimir Zhid in JavaScript Developers
Да, но зачем? Конечно элегантно.. но неее)
источник

α

αμαν in JavaScript Developers
да, не нужно
источник