繁体   English   中英

将对象添加到现有对象中

[英]adding objects into an existing object

我需要使用d3.json函数加载外部JSON文件,例如 具有这种格式

{"pole":[{"name": "p1"}, {"name":"p2"}]}

在主文件中,我将拥有

var MainData ={}; d3.json("url", function(graph){MainData[graph] = graph;});

给了我在MainData内部推送的外部JSON对象。 但是我说谎是能够以MainData.pole的身份访问它

另外,我想加载多个JSON文件并将其推送到同一MainData文件中。

我是JS新手,非常感谢您的帮助。

 var MainData ={}; d3.json("url", function(graph){MainData[graph] = graph;}); 

给了我在MainData内部推送的外部JSON对象。

好吧,但是它有一个非常尴尬的属性名,很可能是[object Object] ,因为当您使用这样的方括号表示法时,括号内的属性名是以字符串形式给出的(现在; ES6添加Symbol ) ,因此您放置在其中的任何非字符串都将变成字符串。 在普通对象上调用toString的默认结果是[object Object]

但是我说谎是能够以MainData.pole身份访问它

假设d3.json在为您解析它之前将其提供给您,然后:

var MainData ={};
d3.json("url", function(graph) { 
    MainData.pole = graph.pole;
});

如果希望您自己解析(似乎不太可能),则:

var MainData ={};
d3.json("url", function(graph) { 
    MainData.pole = JSON.parse(graph).pole;
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM