¿Por qué las marcas de retroceso para las propiedades del objeto son una sintaxis no válida? Por ejemplo, esto es válido:
const test = { "test1": "test2" }Entonces, ¿por qué no puede tener marcas de retroceso en su lugar?
const test = { `test1`: "test2" } //throws unexpected token errorSería realmente útil si se pudieran usar marcas de retroceso de esta manera, pero no podemos. ¿Existe una alternativa simple, o tal vez esto funcione en algunos navegadores?
Debe ponerlo entre paréntesis como este porque se evalúa en tiempo de ejecución.
const test = { [`test1`]: "test2" }Como señaló @Amadan en el comentario, puede usar cualquier expresión como clave de propiedad poniéndola entre paréntesis.
Puedes escribir así:
const key = `test1` const test = { [key]: 'test2' }