2014-01-09 50 views
7

我環顧四周尋找答案,但我認爲這是一種奇怪的問題。我將如何轉換,如使用間隔薄片的文本文件,這樣的:如何在JavaScript中將選項卡式樹轉換爲JSON?

parent 
    child 
    child 
parent 
    child 
     grandchild 
     grandhcild 

{ 
"name" : "parent", 
"children" : [ 
    {"name" : "child"}, 
    {"name" : "child"}, 
] 
}, 
{ 
"name" : "parent", 
"children" : [ 
    { 
    "name" : "child", 
    "children" : [ 
     {"name" : "grandchild"}, 
     {"name" : "grandchild"}, 
     {"name" : "grandchild"}, 
    ] 
    }, 
] 
} 

JSON可能是不完美的,但我希望讓我的點晴。

+1

你有沒有嘗試過自己? – Kerstomaat

回答

-2

從選項卡樹文本文件生成JSON

下方攻擊你的問題的專門鏈接。您所需要做的就是更新代碼,以便輸出格式符合您的要求。


製表符分隔符,以JSON

其他幫助

+0

爲了澄清,這實際上與CSV或TSV文件沒有任何關係。選項卡純粹用於顯示樹中的世代等級。如果一行縮進一次,它就在第二代。沒有標籤意味着它是第一代,兩個標籤是第三代。 – user1114864

+0

@ user1114864我添加的鏈接解決您的問題。 – JSuar

3

我剛剛實現此功能的tabdown標記語言 - 它你追求什麼了。 https://github.com/antyakushev/tabdown

用法很簡單:

var lines = data.toString().split('\n'); 
var tree = tabdown.parse(lines); 
console.log(tree.toString()); 

您還可以使用解析功能的node.js之外,它不依賴於任何模塊。

+1

這不會做他想做的事。您的密鑰是每個節點的名稱。 – Harry

+0

哦,這只是一個不太詳細的方式來打印出相同的數據。但是,樹結構本身確實包含屬性「data」和「children」(分別爲示例中的「name」和「children」),因此它可以用作所需格式的js對象。 –

相關問題