JSFiddle - React, Tailwind, and code Playground

HTML

<div id="test">
    <span></span>
    <span></span>
    <span></span>
    <span>
        <span></span>
        <span></span>
        <span></span>                
    </span>
    <span></span>
</div>
<a href="#" onclick="alert(getCount(document.getElementById('test'), false));">Simple Count of Children</a> (Should result in 5)<br/>
<a href="#" onclick="alert(getCount(document.getElementById('test'), true));">Count Inner Children</a> (Should result in 8)

JavaScript

window.getCount = function(parent, getChildrensChildren){
    var relevantChildren = 0;
    var children = parent.childNodes.length;
    for(var i=0; i < children; i++){
        if(parent.childNodes[i].nodeType != 3){
            if(getChildrensChildren)
                relevantChildren += getCount(parent.childNodes[i],true);
            relevantChildren++;
        }
    }
    return relevantChildren;
}