jQuery/Javascript:在jSON对象中插入ID

jQuery/Javascript: insert ID into jSON object?

本文关键字:对象 插入 ID jSON Javascript jQuery      更新时间:2023-09-26

我通过flashMovie的函数调用获得以下对象作为参数。所以我有一个简单的javascript函数,比如savePro(info),它是从flash电影中调用的。

所以我可以简单地console.log(info),得到这个。

{"action":"setProjectAll", "application":{"proId":"new","zoomPosition":35,"scrollerPosition":0,"language":"en","timelinePosition":0}, "clips":[]}

我在js文件中有一个变量var id = 12。这个变量是动态的,但它总是包含一个数字。

如何用我的变量的id替换json对象中的"proID":"new"?所以我想要…

{"action":"setProjectAll", "application":{"proId":12,"zoomPosition":35,"scrollerPosition":0,"language":"en","timelinePosition":0}, "clips":[]}

之后。

我完全不知道该怎么做?提前谢谢!

好吧,如果这是你所说的实际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

使用点表示法访问属性:

info.application.proId = id;

附带说明:JSON是用于交换的字符串表示。看起来您正在处理的只是一个JavaScript对象

您没有"json对象",您要么有"json",它是对象的字符串表示,要么有一个"对象"。假设是后者,您可以按如下方式设置属性:

info.application.proId = id;

如果你有JSON,你需要解析它来创建一个对象,然后设置属性(如果你需要它作为一个字符串,之后将其返回JSON):

info = JSON.parse(info);
info.application.proId = id;
info = JSON.stringify(info);

您可以使用点表示法访问JSON对象中的属性。像这样:

info.application.proId = id;