JavaScript: filtrare gli elementi del DOM con filter()

In JavaScript possiamo filtrare gli elementi del DOM usando un metodo degli array.

Possiamo usare filter() in questo modo:


'use strict';

const filterElements = (elements, callback) => {
    return Array.prototype.filter.call(elements, callback);
};

Ad esempio data la seguente marcatura:


<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
</ul>

vogliamo ottenere solo le voci di lista contenenti un numero pari. Quindi scriveremo:


const evenItems = filterElements(document.querySelectorAll('li'), element => {
    return parseInt(element.innerText, 10) % 2 === 0;
});

Torna su