首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何向JSON数组动态添加属性

如何向JSON数组动态添加属性
EN

Stack Overflow用户
提问于 2016-05-18 16:59:46
回答 2查看 74关注 0票数 1

我有这个JSON数组

代码语言:javascript
复制
{"nodes":[
        {"type":"simple-node","left":500,"id":"node-start","content":"Start"},
        {"type":"simple-node","left":500,"id":"node-1","content":"Ironing"},
        {"type":"simple-node","left":500,"id":"node-end""content":"End"}
         ],

"connections":[
        {"start":"node-start","end":"node-1"},
        {"start":"node-4","end":"node-5"}
              ]
}

我需要动态地向节点数组中的每个元素添加"top“属性,以便它看起来像下面这样

代码语言:javascript
复制
{"nodes":[
        {"type":"simple-node","left":500,"top":3403.252685546875,"id":"node-start","content":"Start"},
        {"type":"simple-node","left":500,"top":3703.252685546875,"id":"node-1","content":"Ironing"},
        {"type":"simple-node","left":500,"top":3903.252685546875,"id":"node-end""content":"End"}
         ],

"connections":[
        {"start":"node-start","end":"node-1"},
        {"start":"node-4","end":"node-5"}
              ]
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-05-18 17:04:38

您可以在forEach上使用obj.nodes并添加对象属性

代码语言:javascript
复制
var obj = {"nodes":[{"type":"simple-node","left":500,"id":"node-start","content":"Start"},{"type":"simple-node","left":500,"id":"node-1","content":"Ironing"},{"type":"simple-node","left":500,"id":"node-end","content":"End"}],"connections":[{"start":"node-start","end":"node-1"},{"start":"node-4","end":"node-5"}]}

obj.nodes.forEach((e) => {
  e.top = 3403.252685546875;
});

console.log(obj)

更新:首先,如果不使用JSON.parse(yourjson),则需要将json字符串转换为object。

票数 1
EN

Stack Overflow用户

发布于 2016-05-18 17:27:06

代码语言:javascript
复制
    var obj={"nodes":[
       {"type":"simple-node","left":500,"id":"node-start","content":"Start"},
       {"type":"simple-node","left":500,"id":"node-1","content":"Ironing"},
       {"type":"simple-node","left":500,"id":"node-end""content":"End"}
     ]};
      var top_array=[2495,4985,3467];
      for(i=0;i<obj.nodes.length;i++){
          obj.nodes[i].top=top_array[i];
       }

如果您需要从数组中复制密钥

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37305890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档