Array.prototype.every()
Die Methode Array.prototype.every()
ist ein Werkzeug in JavaScript, um zu prüfen, ob alle Elemente eines Arrays eine bestimmte Bedingung erfüllen. Sie gibt true zurück, wenn jedes Element die Callback-Funktion erfolgreich besteht – andernfalls false. Wird ein einziges Element nicht akzeptiert, wird der Test sofort abgebrochen (Short-Circuiting).
Die Methode Array.prototype.every()
prüft, ob alle Elemente eines Arrays einem bestimmten Kriterium (definiert durch eine übergebene Callback-Funktion) entsprechen.
Syntax
Array.prototype.every(callbackFn);
Array.prototype.every(callbackFn, thisArg);
callback
Die Funktion, die auf jedes Element des Arrays angewendet wird. Diese Funktion kann drei Argumente annehmen:
element
: Das aktuelle Element des Arrays, das gerade geprüft wird.index
: (optional) Der Index des aktuellen Elements im Array.array
: (optional) Das gesamte Array, auf dem die Methode aufgerufen wurde.
thisArg
(Optional) Ein Wert, der als this
für die Callback-Funktion verwendet wird, wenn sie ausgeführt wird.
Rückgabewert
Die Methode gibt einen booleschen Wert true
oder false
zurück.
Beispiele
Prüfen, ob alle Elemente größer 10 sind
const numbers = [12, 15, 18, 22];
const greaterThanTen = numbers.every(function(element) {
return element > 10;
});
console.log(greaterThanTen);
true
Prüfen, ob alle Element kleiner 50 sind
const numbers = [25, 36, 42, 60];
const lessThanFifty = numbers.every(element => element > 50);
console.log(lessThanFifty);
false
Verwendung von this
const numbers = [5, 10, 15];
const threshold = { value: 20 };
const belowThreshold = numbers.every(function(element) {
return element < this.value;
}, threshold);
console.log(belowThreshold);
true
Wichtige Hinweise
Leere Arrays
Wenn die Methode auf einem leeren Array aufgerufen wird, gibt sie immer ein true
zurück. Das liegt daran, dass es keine Elemente gibt, die die Bedingung verletzen könnten.
const emptyArray = [];
console.log(emptyArray.every(element => element > 10));
true
Keine Änderung des Arrays
Die Methode erstellt eine flache Kopie des Arrays, bevor sie mit der Iteration beginnt. Änderungen am Array, wie das Hinzufügen oder Entfernen von Elementen, während die Methode läuft, haben keine Auswirkung auf die Iteration.