Rolf B: Array mit booleans auswerten

Beitrag lesen

Hallo Karl,

Die filter Methode kopiert Dir die Array-Elemente in ein neues Array, die eine bestimmte Bedingung erfüllen.

let trueArray = array.filter(el => el === true) erzeugt also ein Array, dessen Elemente allesamt true sind. Du könntest nun mit trueArray.length > 0 testen, ob mindestens ein true vorhanden war, und mit trueArray.length == array.length, ob alle Elementr true waren. Aber das ist unnötig kompliziert.

Zunächst ein Zwischenschrit. Die Pfeilfunktion el => el === true kann man auf el => el verkürzen, sofern sichergestellt ist, dass das durchlaufene Array ausschließlich Booleans enthält.

Feststellen, ob mindestens ein Wert im Array true ist, gelingt mit der Some-Methode so: array.some(el => el). Und die Prüfung, ob alle Werte true sind, geht mit array.every(el => el).

Du hast aber schon festgestellt, dass es für den Fall eines booleschen Arrays noch einfacher geht.

array.includes(true) ermittelt, ob mindestens ein true darin ist !array.includes(false) (beachte das ! zu Beginn) stellt fest, ob alle Werte true sind.

Rolf

--
sumpsi - posui - obstruxi