A különféle műveletek illusztrálására szolgáló JavaScript program

Ebben a példában megtanul olyan JavaScript programot írni, amely szemlélteti a különböző halmazműveleteket.

A példa megértéséhez ismernie kell a következő JavaScript programozási témákat:

  • JavaScript készlet és WeakSet
  • JavaScript a Loop számára
  • JavaScript Function és Function Expressions

1. példa: Állítsa be az uniós műveletet

 // perform union operation // contain elements of both sets function union(a, b) ( let unionSet = new Set(a); for (let i of b) ( unionSet.add(i); ) return unionSet ) // two sets of fruits const setA = new Set(('apple', 'mango', 'orange')); const setB = new Set(('grapes', 'apple', 'banana')); const result = union(setA, setB); console.log(result);

Kimenet

 Készlet ("alma", "mangó", "narancs", "szőlő", "banán")

A set unió művelet mindkét halmaz elemeit egyesíti egybe.

Új készlet unionSetjön létre a new Set(). Az unionSet változó a setA összes értékét tartalmazza. Ezután a for… ofciklust a setB összes elemének iterációjára használják, és a metódussal hozzáadják az unionSet-hez add().

A készlet nem tartalmaz ismétlődő értékeket. Ezért, ha a halmaz ugyanazt az értéket tartalmazza, az utóbbi értéket elvetjük.

2. példa: Állítsa be a kereszteződés működését

 // perform intersection operation // elements of set a that are also in set b function intersection(setA, setB) ( let intersectionSet = new Set(); for (let i of setB) ( if (setA.has(i)) ( intersectionSet.add(i); ) ) return intersectionSet; ) // two sets of fruits const setA = new Set(('apple', 'mango', 'orange')); const setB = new Set(('grapes', 'apple', 'banana')); const result = intersection(setA, setB); console.log(result);

Kimenet

 Készlet ("alma")

A halmaz metszés művelete olyan elemeket képvisel, amelyek mind a setA, mind a setB részen vannak.

Új készlet intersectionSetjön létre a new Set(). Ezután a for… ofciklust a setB-n keresztüli iterációra használják. Minden elemnél, amely a setA-ban és a setB-ben egyaránt jelen van, hozzáadódnak a metszéshalmazhoz.

3. példa: Difference művelet beállítása

 // perform difference operation // elements of set a that are not in set b function difference(setA, setB) ( let differenceSet = new Set(setA) for (let i of setB) ( differenceSet.delete(i) ) return differenceSet ) // two sets of fruits const setA = new Set(('apple', 'mango', 'orange')); const setB = new Set(('grapes', 'apple', 'banana')); const result = difference(setA, setB); console.log(result);

Kimenet

 Készlet ("mangó", "narancs")

A halmazkülönbség művelet olyan elemeket képvisel, amelyek az egyik halmazban vannak, a másikban nem.

A különbségSet a setA összes elemét tartalmazza. Ezután a for… ofciklust a setB összes elemének iterációjára használják. Ha a setB elemben lévő elem elérhető a setA-ban is, akkor az elemet a delete()metódus segítségével töröljük .

4. példa: Állítsa be a részhalmaz működését

 // perform subset operation // true if all elements of set b is in set a function subset(setA, setB) ( for (let i of setB) ( if (!setA.has(i)) ( return false ) ) return true ) // two sets of fruits const setA = new Set(('apple', 'mango', 'orange')); const setB = new Set(('apple', 'orange')); const result = subset(setA, setB); console.log(result);

Kimenet

 igaz

A halmaz részhalmaz művelete igaz értéket ad vissza, ha a halmazB összes eleme a halmazban található.

A for… ofhurok segítségével haladhatunk a setB elemein. Ha bármelyik jelen lévő elem setB nincs jelen a setA-ban, falseakkor visszaadjuk.

érdekes cikkek...