Benchmarkを使用するには、今のいずれかNodeIterator
年代が吸うか、私はそれが間違ってやっているNodeIterator
のNodeIterator
toArray(document.querySelectorAll("div > a.klass")).forEach(function (node) {
// do something with node
});
var filter = {
acceptNode: function (node) {
var condition = node.parentNode.tagName === "DIV" &&
node.classList.contains("klass") &&
node.tagName === "A";
return condition ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_REJECT
}
}
// FIREFOX Y U SUCK
var iter = document.createNodeIterator(document, NodeFilter.SHOW_ELEMENT, filter, false);
var node;
while (node = iter.nextNode()) {
// do thing with node
}
対QSA & .forEach
を比較します。
質問:NodeIterator
はいつ使用しますか?
あなたが知らない場合、DOM4は、NodeIteratorが何であるかを指定します。