我一直在努力完成这项任务,并决定需要你的帮助。如何在行中执行所有名称(html head tag body h1 div ...)。
我使用递归方法编写了一个代码,但某处失败了。执行'无法阅读财产' forEach'未定义的'。你能告诉我哪里有错误并暗示要解决它。
"use strict";
var treeString;
var Node = require("./Node");
function TreeView(result){
treeString = "";
createTreeView(result, 0);
}
var createTreeView = function (current, level) {
treeString += current.children;
current.children.forEach(function(childObj) {
createTreeView(childObj, level + 1);
});
};
TreeView.prototype.toString = function (){
return treeString;
};
// Exports
module.exports = TreeView;
答案 0 :(得分:1)
这应该迭代所有dom元素。粘贴到控制台,看看会发生什么。
var currentNode,
ni = document.createNodeIterator(document.documentElement, NodeFilter.SHOW_ELEMENT);
while(currentNode = ni.nextNode()) {
console.log(currentNode.nodeName);