Duplicar Possível:
Como adiciono uma propriedade a um objeto Javascript usando uma variável como o nome?
Usar variável para o nome da propriedade no literal JavaScript?
É possível adicionar uma variável como o nome da propriedade de um objeto em JavaScript, assim:
var myVar = "name";
var myObject = {
{myVar}: "value"
};
Respostas:
135 para resposta № 1Você pode usar o []
sintaxe para usar um expressão como o nome da propriedade (comparado ao .prop
e prop: value
sintaxes onde são sempre tratadas como strings):
var myObject = {};
var myVar = "name";
myObject[myVar] = "value";
Não há como usar isso dentro de um literal de objeto. Você deve criar o objeto primeiro e depois atribuir cada propriedade separadamente.
Editar
Com o ES6, isso agora é possível usando um ComputedPropertyName, que se manifesta na forma da seguinte sintaxe:
var myVar = "name";
var myObject = {
[myVar]: "value"
};
9 para resposta № 2
Como isso?
var myVar = "name";
var myObject = {};
myObject[myVar] = "value";
6 para resposta № 3
Sim, mas não diretamente.
var myVar = "name";
var object = {};
object[myVar] = "value";