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);truePrüfen, ob alle Elemente kleiner 50 sind
const numbers = [25, 36, 42, 60];
const lessThanFifty = numbers.every(element => element > 50);
console.log(lessThanFifty);falseVerwendung 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);trueWichtige 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)); trueKeine Ä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.