带有d3.js外括号的JSON?

时间:2017-06-06 00:20:55

标签: javascript json d3.js

当我得到一个名为" test.json"的JSON文件时看起来像这样:

[{
"name":"abc",
"parent":"null",
"children":[],
}
]

这意味着外括号[]包装整个数据,不能在d3.js中使用层次结构函数:

 d3.json("test.json", function(a) {

    var hierarchy = d3.hierarchy(a),
        links = hierarchy.links()
        nodes = hierarchy.descendants();

现在,当我离开括号时,这意味着" test.json"看起来像这样,可以使用文件:

{
"name":"abc",
"parent":"null",
"children":[],
}

现在,我的问题是:这是否是d3.js的一个特定问题,可能是hierarchy函数的组合,或者它总是不起作用,用括号[]包装整个文件?

1 个答案:

答案 0 :(得分:0)

外括号表示数组。要获取对象/地图,请将其编入索引:

a[0]

所以如果a是:

[   {
        "name": "abc",
        "parent": "null",
        "children": []
    }
]

然后a[0]只是

{
    "name": "abc",
    "parent": "null",
    "children": []
}