Задать вопрос
@Alex_87

Как собрать статистику DOM-дерева?

У меня следующее задание:

Моё решение(до классов пока не добрался)

https://codepen.io/Alexei_87/pen/dypyYPw?editors=1011

И у меня проблема! Вместо того, чтобы выводить
DIV: 1; B: 2;
У меня выводиться больше дивов и B. Всё это скорее всего происходит из-за рекурсии. Подскажите пожалуйста, как правильно решить эту проблему!

P.S. Мне подсказали не создавать массив, а кидать сразу в объект и вот что я сделал:
if(children[i].tagName != undefined){
      			obj.tags[children[i]] = (obj.tags[children[i]] || 0) + 1;
      		   }

В консоле, в свойстве tags правда вышли не теги, а это
5fc0b2f81afb3856598847.png
  • Вопрос задан
  • 89 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
Lynn
@Lynn
nginx, js, css
const s={};
document.querySelectorAll('*').forEach(({ tagName: n }) =>{
    s[n] = s[n] ? s[n] + 1 : 1;
});
console.table(s);

5fc0bb0d3e1a5734071851.png
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Решение не смотрел, но я бы решил "в лоб".
1. Заводим массив из всех типов элементов (h1, b, div, span итд)
2. document.querySelectorAll
3. Профит
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы