Set.prototype.isSubsetOf()
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 isSubsetOf()
-Methode von Set
-Instanzen nimmt eine Menge und gibt einen booleschen Wert zurück, der anzeigt, ob alle Elemente dieser Menge in der gegebenen Menge enthalten sind.
Syntax
isSubsetOf(other)
Parameter
other
-
Ein
Set
-Objekt oder ein set-ähnliches Objekt.
Rückgabewert
true
, wenn alle Elemente in dieser Menge auch in der other
-Menge sind, und false
andernfalls.
Beschreibung
In mathematischer Notation wird subset definiert als:
Und anhand eines Venn-Diagramms:
Hinweis:
Die subset-Beziehung ist kein proper subset, was bedeutet, dass isSubsetOf()
true
zurückgibt, wenn this
und other
die gleichen Elemente enthalten.
isSubsetOf()
akzeptiert set-ähnliche Objekte als other
-Parameter. Es erfordert, dass this
eine tatsächliche Set
-Instanz ist, da es direkt auf die zugrunde liegenden Daten in this
zugreift, ohne benutzerdefinierten Code auszuführen. Danach hängt das Verhalten von den Größen von this
und other
ab:
- Wenn es in
this
mehr Elemente gibt alsother.size
, wird direktfalse
zurückgegeben. - Andernfalls wird über die Elemente in
this
iteriert, und es wirdfalse
zurückgegeben, wenn irgendein Elemente
inthis
other.has(e)
dazu bringt, einen falsy-Wert zurückzugeben. Andernfalls wirdtrue
zurückgegeben.
Beispiele
Verwendung von isSubsetOf()
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 aller 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
Gleiche Mengen sind Teilmengen voneinander:
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
Specification |
---|
Set methods # sec-set.prototype.issubsetof |
Browser-Kompatibilität
BCD tables only load in the browser