如何在JavaScript中将变量添加为JSON键

7

我有一个键值对的JSON对象。我想将一个变量作为键添加进去,但我不知道如何添加。我尝试过一些代码,但它没有设置变量值。我该如何解决这个问题?

var id='second'
var obj={'first': 123, id: 23}
console.log(obj); //{first: 123, id: 23}

但我希望结果像这样。

{first: 123, second: 23}

请帮我解决这个问题。谢谢。


5
可能是JavaScript set object key by variable的重复问题,还有数百个类似的问题。 - JJJ
1
你没有一个“JSON对象”。请参见JSON和对象字面符号表示法之间有什么区别? - JJJ
是的,它是一个对象字面量表示法。 - giththan giththan
4个回答

11

尝试这个。它有效。

id='second'
var obj={'first': 123,[id]: 23}


10

如果您已经构建了对象,则可以通过以下方式添加属性:

obj[id] = 23

如果你还没有制造这个物体并且正在此时组装它:

var obj = {
    first: 123,
    [id]: 23
}

2
这很简单: obj[id]=123;

它显示的结果类似于{first: 123, id: 23, second: 123},但我希望以高效的方式去掉id: 23 - giththan giththan
我不确定你想要做什么。所以你想把id:23改成second:123吗?然后在之前添加delete obj["id"]; - Marek

1

尝试:

obj[id] = 23

它将添加一个名为变量id的键,并将其值设置为23

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接