我通过flashMovie的函数调用得到以下对象作为参数。所以我有一个简单的javascript函数,如savePro(info)
,它是从flashmovie中调用的。
所以我可以简单地console.log(info)
而且我得到了这个。
{"action":"setProjectAll", "application":{"proId":"new","zoomPosition":35,"scrollerPosition":0,"language":"en","timelinePosition":0}, "clips":[]}
我的js文件中有一个变量var id = 12
。这个变量是动态的,但总是有一个数字。
如何用我变量的"proID":"new"
替换json对象中的id
?
所以我想要......
{"action":"setProjectAll", "application":{"proId":12,"zoomPosition":35,"scrollerPosition":0,"language":"en","timelinePosition":0}, "clips":[]}
之后。
我完全不知道怎么做? 提前谢谢!
答案 0 :(得分:1)
使用点表示法访问该属性:
info.application.proId = id;
旁注:JSON是用于交换的字符串表示。你正在处理的只是一个 JavaScript对象。
答案 1 :(得分:1)
好吧,如果这是您正在讨论的实际JSON
文字,那么您需要
后者就是这样......
var obj = JSON.parse(info); // parse the JSON into a JavaScript object
obj.application.proId = id; // modify the object
info = JSON.stringify(obj); // stringify it into JSON if you wanted it as JSON
如果您确实没有JSON
数据,那么您只需按照在任何初学JavaScript书中找到的方式对其进行操作。
这与上面第二行代码的方法相同......
info.application.proId = id; // modify the object
答案 2 :(得分:0)
你没有“json对象”,你有“json”,它是你对象的字符串表示,或者你有一个“对象”。假设后者您可以按如下方式设置属性:
info.application.proId = id;
如果你有JSON,你需要解析它来创建一个对象,然后设置属性(如果你需要它作为一个字符串,之后再转回JSON):
info = JSON.parse(info);
info.application.proId = id;
info = JSON.stringify(info);
答案 3 :(得分:0)
您可以使用点表示法访问JSON对象中的属性。像这样:
info.application.proId = id;