Javascript 向对象文本添加变量

Javascript 向对象文本添加变量,javascript,Javascript,我试图向正在创建的对象添加变量,但当我记录对象时,id仅显示为id,而不是我的ref.key()值 var id = ref.key(); var newItem = { 'provider1': { 'services': { id: true } } }; console.log(newItem); 知道我做错了什么吗?感谢您的帮助。提前谢谢 您应该使用括号表示法: var id = ref.key(); var newItem = { 'pr

我试图向正在创建的对象添加变量,但当我记录对象时,
id
仅显示为
id
,而不是我的
ref.key()

var id = ref.key();

var newItem = {
  'provider1': {
    'services': {
      id: true
    }
  }
};

console.log(newItem);

知道我做错了什么吗?感谢您的帮助。提前谢谢

您应该使用括号表示法:

var id = ref.key();

var newItem = {
  'provider1': {
    'services': {}
  }
};
newItem.provider1.services[id] = true;

console.log(newItem);

彼此完全无关。一个是
变量
,另一个是设置为
true的
对象键名

'services': {
      id: id // <-- this id has your ref.key() value
    }
“服务”:{

id:id//键是文字,如果要使用变量,必须使用括号表示法,如
newItem.provider1.services[id]=true
您的
ref.key()
值是什么?使用索引器。
[id]
。您正在将
id
属性设置为
true
,而不是变量
id
,可能应该是
id:id
@PatrickEvans我有意将我的
id
设置为
true
'services': {
      id: true
    }
'services': {
      id: id // <-- this id has your ref.key() value
    }