JavaScript Array filter() Methode

Array 对象参考手册JavaScript Array-Objekt

Beispiel

Gibt ArrayagesElemente zurück, in denen alle Elemente größer als 18 sind:

var ages = [32, 33, 16, 40];

function checkAdult(age) {
    return age >= 18;
}

function myFunction() {
    document.getElementById("demo").innerHTML = ages.filter(checkAdult);
}

Ausgabeergebnis:

32,33,40

Selbst ausprobieren »

Definition und Verwendung

Die filter() Methode erstellt ein neues Array, das alle Elemente enthält, die den von der bereitgestellten Funktion implementierten Test bestehen.

Hinweis:filter() testet keine leeren Arrays.

Hinweis:filter() ändert das ursprüngliche Array nicht.


Browser-Unterstützung

Die Zahlen in der Tabelle geben die erste Browserversion an, die die Methode vollständig unterstützt.

Methode
filter() Ja 9 1.5 Ja Ja

Syntax

array.filter(function(currentValue,index,arr), thisValue)

Parameterdetails

Parameter Beschreibung
function(currentValue, index,arr) Erforderlich. Eine Funktion, die für jedes Element im Array ausgeführt wird.
Funktionsparameter:
Parameter Beschreibung
currentValue Erforderlich. Der Wert des aktuellen Elements.
index Optional. Der Index des aktuellen Elements.
arr Optional. Das Array-Objekt, zu dem das aktuelle Element gehört.
thisValue Optional. Ein Objekt, das als "this" verwendet wird, wenn der Callback ausgeführt wird, und das an die Funktion übergeben wird.
Wenn thisValue ausgelassen wird, ist der Wert von "this" "undefined".

Technische Details

Rückgabewert: Gibt ein Array zurück, das alle Elemente enthält, die die Bedingung erfüllen. Wenn keine Elemente die Bedingung erfüllen, wird ein leeres Array zurückgegeben.
JavaScript-Version: 1.6

Weitere Beispiele

Beispiel

Gib alle Elemente im Array ages zurück, die größer als der im Eingabefeld angegebene Wert sind:

<p>Mindestalter: <input type="number" id="ageToCheck" value="18"></p>
<button onclick="myFunction()">Klick mich</button>

<p>Welche Elemente sind größer als der angegebene Wert? <span id="demo"></span></p>

<script>
var ages = [32, 33, 12, 40];

Funktion checkAdult(age) {
    return age >= document.getElementById("ageToCheck").value;
}

function myFunction() {
    document.getElementById("demo").innerHTML = ages.filter(checkAdult);
}
</script>
Selbst ausprobieren »

Array 对象参考手册JavaScript Array-Objekt

Andere Erweiterungen