zpět k lekci

Spočítejte potomky

důležitost: 5

Máme strom, strukturovaný jako vnořené značky ul/li.

Napište kód, který pro každou <li> zobrazí:

  1. Jaký text je uvnitř ní (bez podstromu)
  2. Počet vnořených <li> – všech potomků, včetně těch hlouběji zanořených.

Demo v novém okně

Otevřít pískoviště pro úlohu.

Vytvořme cyklus nad <li>:

for (let li of document.querySelectorAll('li')) {
  ...
}

V cyklu musíme získat text uvnitř každého li.

Můžeme přečíst text z prvního dítěte uzlu li, kterým je textový uzel:

for (let li of document.querySelectorAll('li')) {
  let titulek = li.firstChild.data;

  // titulek je text v <li> před všemi ostatními uzly
}

Počet potomků pak můžeme získat jako li.getElementsByTagName('li').length.

Otevřít řešení na pískovišti.