Set.prototype.isSupersetOf()
Baseline 2024Newly 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 anzeigt, ob alle Elemente der angegebenen Menge in dieser Menge enthalten sind.
Syntax
isSupersetOf(other)
Parameter
other
-
Ein
Set
-Objekt oder ein set-ähnliches Objekt.
Rückgabewert
true
, wenn alle Elemente in der other
-Menge auch in dieser Menge vorhanden sind, andernfalls false
.
Beschreibung
In mathematischer Notation ist Obermenge definiert als:
Und unter Verwendung eines Venn-Diagramms:
Hinweis:
Die Obermenge Beziehung ist keine echte Obermenge, was bedeutet, dass isSupersetOf()
true
zurückgibt, wenn this
und other
dieselben Elemente enthalten.
isSupersetOf()
akzeptiert set-ähnliche Objekte als 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. Danach hängt das Verhalten von den Größen von this
und other
ab:
- Wenn
this
weniger Elemente enthält alsother.size
, gibt es direktfalse
zurück. - Andernfalls iteriert es über
other
indem es diekeys()
Methode aufruft, und wenn ein Element inother
nicht inthis
vorhanden ist, gibt esfalse
zurück (und schließt denkeys()
Iterator durch Aufruf seinerreturn()
Methode). 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 ist, aber nicht ungerade:
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
Gleichwertige 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 |