„JavaScript“ programa, skirta iliustruoti įvairias rinkinio operacijas

Šiame pavyzdyje išmoksite rašyti „JavaScript“ programą, kuri iliustruos skirtingas rinkinio operacijas.

Norėdami suprasti šį pavyzdį, turite žinoti šias „JavaScript“ programavimo temas:

  • „JavaScript“ rinkinys ir „WeakSet“
  • „Java“ iš „Loop“
  • „JavaScript“ funkcijos ir funkcijos išraiškos

1 pavyzdys: nustatykite „Union Operation“

 // 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);

Rezultatas

 Komplektas („obuolys“, „mango“, „apelsinas“, „vynuogės“, „bananas“)

Aibės sąjungos operacija sujungia abiejų rinkinių elementus į vieną.

Naujas rinkinys unionSetsukurtas naudojant new Set(). „UnionSet“ kintamajame yra visos „setA“ reikšmės. Tada for… ofkilpa naudojama pakartoti visus setB elementus ir pridėti juos prie unionSet naudojant add()metodą.

Rinkinyje nėra pasikartojančių verčių. Taigi, jei rinkinyje yra ta pati reikšmė, pastaroji vertė atmetama.

2 pavyzdys: Nustatykite sankirtos operaciją

 // 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);

Rezultatas

 Rinkinys („obuolys“)

Rinkinio sankirtos operacija reiškia elementus, esančius ir rinkinyjeA, ir rinkinyjeB.

Naujas rinkinys intersectionSetsukurtas naudojant new Set(). Tada for… ofkilpa naudojama kartoti per setB. Kiekvienam elementui, esančiam tiek rinkinyjeA, tiek rinkinyjeB, jie pridedami prie sankirtos aibės.

3 pavyzdys: Nustatykite skirtumo veikimą

 // 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);

Rezultatas

 Rinkinys („mango“, „oranžinis“)

Rinkinio skirtumo operacija nurodo elementus, esančius viename rinkinyje, o ne kitame.

„DifferSet“ yra visi „setA“ elementai. Tada for… ofkilpa naudojama kartojant visus setB elementus. Jei elementas, esantis rinkinyjeB, yra ir rinkinyje A, elementas ištrinamas naudojant delete()metodą.

4 pavyzdys: Nustatykite pogrupio veikimą

 // 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);

Rezultatas

 tiesa

Rinkinio pogrupio operacija grąžinama teisinga, jei visi aibės B elementai yra aibėje A.

for… ofKilpa naudojama kilpa per SETB elementų. Jei kuris nors esamas elementas yra setB, rinkinyje A nėra, falsejis grąžinamas.

Įdomios straipsniai...