如何在javascript中使用变量值作为对象键

时间:2015-03-16 07:49:46

标签: javascript

var work = 'sample';

{ 
    "publish": {
        work: "done"
    }
}

最初工作的价值是sample。如果工作值动态变化,我如何将变量work传递给对象?

3 个答案:

答案 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}}
相关问题