JavaScript-arrayfilter()
voorbeeld 1
Retourneer een array van alle waarden in leeftijden[] die 18 jaar of ouder zijn:
const ages = [32, 33, 16, 40];
const result = ages.filter(checkAdult);
function checkAdult(age) {
return age >= 18;
}
Definitie en gebruik
De filter()
methode creëert een nieuwe array gevuld met elementen die slagen voor een test die door een functie wordt geleverd.
De filter()
methode voert de functie niet uit voor lege elementen.
De filter()
methode verandert niets aan de oorspronkelijke array.
Syntaxis
array.filter(function(currentValue, index, arr), thisValue)
Parameters:
Parameter | Description |
function() | Required. A function to run for each array element. |
currentValue | Required. The value of the current element. |
index | Optional. The index of the current element. |
arr | Optional. The array of the current element. |
thisValue | Optional. Default undefined A value passed to the function as its this value. |
Winstwaarde
Type | Beschrijving |
een array |
Met de elementen die de test doorstaan. Als geen enkel element de test doorstaat, wordt een lege array geretourneerd. |
Browserondersteuning
filter()
is een ECMAScript5 (ES5)-functie.
ES5 (JavaScript 2009) volledig ondersteund in alle browsers:
Chrome | IE | Edge | Firefox | Safari | Opera |
Yes | 9-11 | Yes | Yes | Yes | Yes |
Voorbeeld 2
Retourneer de waarden in leeftijden[] die groter zijn dan een specifiek getal:
<p><input type="number" id="ageToCheck" value="30"></p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<script>
const ages = [32, 33, 12, 40];
function checkAge(age) {
return age > document.getElementById("ageToCheck").value;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.filter(checkAge);
}
</script>