我用javascript代码写了一个html文件,它以平面结构读取一个json文件并转换为树结构(考虑节点的父节点)。
输出存储在
中var tree = [];
我通过将根节点("parent":"null"
)推送到树并将其他节点推送到各自的父节点来填充树阵列。
最后我提出以下警告声明:
alert(JSON.stringify(tree, null, ' '));
我从WAMP服务器运行HTML文件。警报按预期显示包含内容的消息。 但是,我想将数据写入文件而不是警报。 我该怎么做?
我在html文件中编写了以下代码。 abc.js定义了一个名为data的变量,它以扁平形式存储json数据。 我需要通过写入文件来替换警报。
<html>
<head>
<script src="http://d3js.org/d3.v3.min.js"></script>
<script src="abc.js"></script>
<script type="text/javascript">
// create a name: node map
var dataMap = data.reduce(function(map, node) {
map[node.id] = node;
return map;
}, {});
// create the tree array
var tree = [];
data.forEach(function(node) {
// add to parent
var parent = dataMap[node.parent];
if (parent) {
// create child array if it doesn't exist
(parent.children || (parent.children = []))
// add node to child array
.push(node);
} else {
// parent is null or missing
tree.push(node);
}
});
alert(JSON.stringify(tree, null, ' '));
</script>
</head>
<body></body>
</html>