Вопрос проверяет понимание исторических и архитектурных причин поведения объектов в JavaScript.
Короткий ответ
Ключи объекта приводятся к строке, потому что объект в JavaScript изначально задумывался как словарь “строка → значение”. Такое решение упрощает модель данных и делает доступ к свойствам быстрым и предсказуемым. Это поведение закреплено в спецификации языка. Исключением являются Symbol, добавленные позже.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.