Set.prototype.isSupersetOf()
Baseline 2024
Newly available
Since June 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Die isSupersetOf()
Methode von Set
Instanzen nimmt eine Menge und gibt einen booleschen Wert zurück, der angibt, ob alle Elemente der gegebenen Menge in dieser Menge enthalten sind.
Syntax
isSupersetOf(other)
Parameter
other
-
Ein
Set
Objekt oder ein mengenähnliches Objekt.
Rückgabewert
true
, wenn alle Elemente in der other
Menge auch in dieser Menge sind, andernfalls false
.
Beschreibung
In mathematischer Notation ist Obermenge definiert als:
Und mit einem Venn-Diagramm dargestellt:
Hinweis: Die Obermenge Beziehung ist keine echte Obermenge, was bedeutet, dass isSupersetOf()
true
zurückgibt, wenn this
und other
die gleichen Elemente enthalten.
isSupersetOf()
akzeptiert mengenähnliche Objekte als den other
Parameter. Es erfordert, dass this
eine tatsächliche Set
Instanz ist, weil es direkt die zugrunde liegenden Daten in this
abruft, ohne Benutzer-Code aufzurufen. Dann hängt sein Verhalten von der Größe von this
und other
ab:
- Wenn es in
this
weniger Elemente gibt alsother.size
, dann gibt es direktfalse
zurück. - Andernfalls iteriert es über
other
, indem es dessenkeys()
Methode aufruft und wenn ein beliebiges Element inother
nicht inthis
vorhanden ist, gibt esfalse
zurück (und schließt denkeys()
Iterator, indem es dessenreturn()
Methode aufruft). Andernfalls gibt estrue
zurück.
Beispiele
Verwendung von isSupersetOf()
Die Menge der geraden Zahlen (<20) ist eine Obermenge der Vielfachen von 4 (<20):
const evens = new Set([2, 4, 6, 8, 10, 12, 14, 16, 18]);
const fours = new Set([4, 8, 12, 16]);
console.log(evens.isSupersetOf(fours)); // true
Die Menge aller ungeraden Zahlen (<20) ist keine Obermenge der Primzahlen (<20), weil 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(odds.isSupersetOf(primes)); // false
Äquivalente Mengen sind Obermengen voneinander:
const set1 = new Set([1, 2, 3]);
const set2 = new Set([1, 2, 3]);
console.log(set1.isSupersetOf(set2)); // true
console.log(set2.isSupersetOf(set1)); // true
Spezifikationen
Specification |
---|
Set methods # sec-set.prototype.issupersetof |
Browser-Kompatibilität
BCD tables only load in the browser