-2
オブジェクトを解析してツリー構造のように印刷したい。私は処理(privateJetとShip)に問題があります。私は再帰関数でそれをやりたい文字列でオブジェクトを解析してツリー構造で表示する
オブジェクト:
[{"land":[{"vehicles":["car","bus","train"]}]},{"air":[{"commercial":[{"flight":["local","international"]},"privateJet"]},"ship"]}]
私が得たもの:
コード:
<!doctype html>
<html>
<body>
<div id="abc"></div>
<script>
var treeObj = [{"land":[{"vehicles":["car","bus","train"]}]},{"air":[{"commercial":[{"flight":["local","international"]},"privateJet"]},"ship"]}]
function createTree(obj, parent) {
for(key in obj) {
if(typeof obj[key] == 'string') {
document.getElementById('abc').innerHTML += '<div style="padding-left:10em">' + obj[key] + '</div>';
} else {
console.log(key, obj);
x = 1;
for(categoryKey in obj[key]) {
var category = obj[key];
if(Object.prototype.toString.call(category[categoryKey]) === '[object Array]') {
document.getElementById('abc').innerHTML += '<div style="padding-left:'+ (parent * 5) +'em">' + categoryKey;
createTree(category[categoryKey], x);
document.getElementById('abc').innerHTML += '</div>';
}
x++;
}
}
}
}
createTree(treeObj, 0);
</script>
</body>
</html>
...あなたはあなたのコードを追加するのを忘れ。 – trincot
^^ご質問... –