Ответ 1
Совсем недавно с ES6. Они называются "именами вычисленных свойств"
Из MDN:
Начиная с ECMAScript 2015, синтаксис инициализатора объекта также поддерживает вычисленные имена свойств. Это позволяет вам выразить выражение в скобках
[]
, который будет вычислен как имя свойства.