Javascript 无法使用JS函数生成树
为什么函数buildTree不迭代整个xml 以下是xml和JS的代码:Javascript 无法使用JS函数生成树,javascript,xml,recursion,Javascript,Xml,Recursion,为什么函数buildTree不迭代整个xml 以下是xml和JS的代码: var response=“AlexMusicSalsanatashiking”; 函数构建树(数据){ treePart=“”; 树部件+=“”; 如果(data.childrence.length!=0){ 对于(i=0;i
var response=“AlexMusicSalsanatashiking”;
函数构建树(数据){
treePart=“”;
树部件+=“”;
如果(data.childrence.length!=0){
对于(i=0;i”+data.children[i]。标记名+“[-]”;
treePart+=buildTree(data.children[i]);
treePart+=“”;
}
treePart+=“
”;
}
否则{
treePart+=“”+data.innerHTML+” ”;
}
treePart+=“”;
返回树部件;
}
parser=新的DOMParser();
xml=parser.parseFromString(响应'text/xml');
x=构建树(xml);
document.getElementById('app').innerHTML=x代码>
用于(i=0…
如果不使用“var”或“let”声明i
,则它假定全局范围:
当它在h
标记上完成迭代时,i=2
,因此当它返回到第二个friend
标记上进行迭代时,i
为false并停止
var response=“AlexMusicSalsanatashiking”;
函数构建树(数据){
treePart=“”;
树部件+=“”;
如果(data.childrence.length!=0){
//用“var”或“let”初始化i
对于(var i=0;i”+data.children[i]。标记名+“[-]”;
treePart+=buildTree(data.children[i]);
treePart+=“”;
}
//这太多了
//treePart+=“”;
}
否则{
treePart+=“”+data.innerHTML+” ”;
}
treePart+=“”;
返回树部件;
}
parser=新的DOMParser();
xml=parser.parseFromString(响应'text/xml');
x=构建树(xml);
document.getElementById('app').innerHTML=x;