Когда вы делаете object["1foo"]
, вы на самом деле экранируете имя свойства, поэтому оно работает.
Другое тоже не работает, потому что 1foo не экранируется, оно в той же форме.
Если вы хотите получить доступ к элементам объекта со стандартными точечными обозначениями (например, object.property), вам не разрешается использовать какие-либо специальные символы, кроме _ или $;Кроме того, имя не может начинаться с цифры.Во всех остальных случаях вы должны использовать квадратные скобки и кавычки для доступа к элементам объекта.