Set.prototype.isSubsetOf()
Baseline 2024>
Neu verfügbar
Seit Juni 2024 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.
Die Methode isSubsetOf() von Set-Instanzen nimmt eine Menge entgegen und gibt einen booleschen Wert zurück, der angibt, ob alle Elemente dieser Menge in der angegebenen Menge enthalten sind.
Syntax
isSubsetOf(other)
Parameter
other-
Ein
Set-Objekt oder ein Set-ähnliches Objekt.
Rückgabewert
true, wenn alle Elemente dieser Menge auch in der Menge other enthalten sind; andernfalls false.
Beschreibung
In mathematischer Notation ist eine Teilmenge wie folgt definiert:
Und als Venn-Diagramm dargestellt:
Hinweis:
Die Beziehung Teilmenge ist nicht auf echte Teilmengen beschränkt. Daher gibt isSubsetOf() auch dann true zurück, wenn this und other dieselben Elemente enthalten.
isSubsetOf() akzeptiert Set-ähnliche Objekte als Parameter other. this muss eine tatsächliche Set-Instanz sein, da die Methode direkt auf die in this gespeicherten Daten zugreift, ohne benutzerdefinierten Code aufzurufen. Das weitere Verhalten hängt von der Größe von this und other ab:
- Wenn
thismehr Elemente enthält, alsother.sizeangibt, gibt die Methode unmittelbarfalsezurück. - Andernfalls durchläuft sie die Elemente von
thisund gibtfalsezurück, sobaldother.has(e)für ein Elementeausthiseinen falsy-Wert zurückgibt. Trifft dies auf kein Element zu, gibt sietruezurück.
Beispiele
>isSubsetOf() verwenden
Die Menge der Vielfachen von 4 (<20) ist eine Teilmenge der geraden Zahlen (<20):
const fours = new Set([4, 8, 12, 16]);
const evens = new Set([2, 4, 6, 8, 10, 12, 14, 16, 18]);
console.log(fours.isSubsetOf(evens)); // true
Die Menge der Primzahlen (<20) ist keine Teilmenge der ungeraden Zahlen (<20), da 2 eine Primzahl, aber nicht ungerade ist:
const primes = new Set([2, 3, 5, 7, 11, 13, 17, 19]);
const odds = new Set([3, 5, 7, 9, 11, 13, 15, 17, 19]);
console.log(primes.isSubsetOf(odds)); // false
Mengen mit denselben Elementen sind jeweils eine Teilmenge der anderen:
const set1 = new Set([1, 2, 3]);
const set2 = new Set([1, 2, 3]);
console.log(set1.isSubsetOf(set2)); // true
console.log(set2.isSubsetOf(set1)); // true
Spezifikationen
| Spezifikation |
|---|
| ECMAScript® 2027 Language Specification> # sec-set.prototype.issubsetof> |