javascript - 从对象及其子对象中获取所有名称

标签 javascript object pug

I posted a object down below

我已经为这项任务苦苦挣扎了一段时间,并决定需要您的帮助。我怎样才能让所有的名字按行执行(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;

最佳答案

这应该迭代所有 dom 元素。粘贴到控制台,看看会发生什么。

var currentNode,
    ni = document.createNodeIterator(document.documentElement, NodeFilter.SHOW_ELEMENT);

while(currentNode = ni.nextNode()) {
    console.log(currentNode.nodeName);

关于javascript - 从对象及其子对象中获取所有名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33656305/

相关文章:

asp.net - 使用 javascript、jquery 将 .ascx 页面呈现为 .aspx 页面

javascript - 如何跳过除第一个事件之外的所有 onchange 事件?

java - 创建新对象时,我的计数器保持相同的数字

laravel-5 - Laravel5 的 Jade 渲染引擎?

javascript - Express.js 从 MongoDB ID 创建 URL

javascript - Jade 包含基于变量的模板

javascript - Sankey 图表的 Google 图表问题

php - 我将如何使用 JSON/PHP/Mysql 保存我的 Javascript 对象,以便在用户返回时重新加载它们?

linux - Makefile 不生成目标代码或可执行文件

PHP 类::为什么声明为新的?