JSFiddle - React, Tailwind, and code Playground
HTML
<div id="main">
<div>Div</div>
<ul>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
</ul>
<p>Paragraph</p>
<div>Div</div>
<ul>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
</ul>
<p>Paragraph</p>
<ul>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
</ul>
<div>Div</div>
<p>Paragraph</p>
<ul>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
</ul>
<div>Div</div>
<p>Paragraph</p>
<div>Div</div>
<p>Paragraph</p>
<p>Paragraph</p>
<p>Paragraph</p>
<div>Div</div>
<div>Div</div>
<div>Div</div>
<p>Paragraph</p>
<div>Div</div>
<p>Paragraph</p>
<div>Div</div>
<div>Div</div>
<ul>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
</ul>
<div>Div</div>
<p>Paragraph</p>
<div>Div</div>
<p>Paragraph</p>
<p>Paragraph</p>
<ul>
<li>ListItem</li>
<li>ListItem
<ul>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
</ul></li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
</ul>
<p>Paragraph</p>
<div>Div</div>
<div>Div</div>
<ul>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
</ul>
<p>Paragraph</p>
<div>Div</div>
<ul>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
<li>ListItem</li>
</ul>
<div>Div</div>
<p>Paragraph</p>
...
JavaScript
var count = 10000;
var div = document.querySelector('#main');
var childNodes = div.children;
var length = childNodes.length,
tag = 'DIV',
className = 'vasea',
attr = 'aaaa',
attrValue = 'tttt';
console.time('childNodes');
for (var i = 0; i < count; i++) {
for (var j = 0, t; j < length; j++) {
t = childNodes[j];
if(t.nodeType == 3 && t.nodeName == tag && t.className == className && t.getAttribute(attr) == attrValue){
t;
}
}
}
console.timeEnd('childNodes');
console.time('selector');
for (var i = 0; i < count; i++) {
for(var j = 0, arr = div.querySelectorAll('#main > div.vasea[aaaa=tttt]'), len = arr.length; j < len; j++){
arr[j]
}
}
console.timeEnd('selector');