var work = 'sample';
{
"publish": {
work: "done"
}
}
最初工作的价值是sample
。如果工作值动态变化,我如何将变量work
传递给对象?
答案 0 :(得分:3)
我假设您的对象名为obj
,
var obj={
"publish": {}
}
obj.publish[work]= "done";
使用方括号,您可以使用变量定义属性。
所以对象现在将成为
{
"publish": {
"sample": "done"
}
}
<小时/>
var work = 'sample';
var obj = {
"publish": {}
}
obj.publish[work] = "done";
document.write(JSON.stringify(obj))
请参阅此Fiddle
答案 1 :(得分:-2)
//try this
var work = "sample";
var yourJSON = { "publish": { "work": work }};
work = "updated sample";
yourJSON.publish.work = work;
答案 2 :(得分:-2)
在您的JSON结构中,“work”不在引号中。这意味着“work”这个词本身不起作用 - 只有变量“work”的值才能作为一个键。
在这方面,您的JSON或上述变量声明都具有误导性。
如果你的意思是:
{ "publish": { "work": "done" } }
然后更改“work”键的值就像这样简单:
myNewStructure = {"publish": {"work": work}}