json中的null数组问题

时间:2011-07-07 14:44:45

标签: javascript json go

我编写了一个函数,它扫描给定目录中的所有files /目录并返回一个json对象。我需要使用jstree在UI上显示这个json对象。我已经使用递归来编写函数来扫描以该特定文件夹为根的所有文件和目录。

这是我用来构建整个结构的类型

type Directory struct {
    Name string "data"
    SubDirs []Directory "children"
}

现在jstree接受以下格式的数据结构。

json_data: {
        data: [
            "f1",
            "f2",
            {
                data: "f3",
                children: ["f4", "f5"]
            }
        ]
 }

而不是格式: -

json_data: {
        data: [
            {
              "data": "f1",
              "children": []
            } 
            {
              "data": "f2",
              "children": []
            } 
            {
                data: "f3",
                children: ["f4", "f5"]
            }
        ]
 }

(当我传递上述数据结构格式时,它可能不起作用,因为“children”的东西是null)

因此,我维护的数据结构目录不足以构建目录结构。

如何解决构建目录树的问题?

1 个答案:

答案 0 :(得分:1)

最后一个甚至不是有效的JSON。规范定义了空数组有效且允许。尝试:

{
    "data": [
        {
            "data": "f1",
            "children": []
        },
        {
            "data": "f2",
            "children": []
        },
        {
            "data": "f3",
            "children": [
                "f4",
                "f5"
            ]
        }
    ]
}

使用JSONLint验证您的JSON对象。