Program JavaScript do zilustrowania różnych operacji na zbiorach

W tym przykładzie nauczysz się pisać program JavaScript, który zilustruje różne operacje na zbiorach.

Aby zrozumieć ten przykład, powinieneś znać następujące tematy programowania JavaScript:

  • JavaScript Set i WeakSet
  • JavaScript dla… of Loop
  • Funkcje i wyrażenia funkcyjne JavaScript

Przykład 1: Set 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);

Wynik

 Zestaw („jabłko”, „mango”, „pomarańcza”, „winogrona”, „banan”)

Operacja set union łączy elementy obu zestawów w jeden.

Nowy zestaw unionSetjest tworzony za pomocą new Set(). Zmienna unionSet zawiera wszystkie wartości setA. Następnie for… ofpętla jest używana do iteracji przez wszystkie elementy setB i dodawania ich do unionSet przy użyciu add()metody.

Zestaw nie zawiera zduplikowanych wartości. Stąd, jeśli zestaw zawiera tę samą wartość, ta ostatnia wartość jest odrzucana.

Przykład 2: Ustaw operację przecięcia

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

Wynik

 Zestaw („jabłko”)

Operacja set intersection reprezentuje elementy, które są obecne zarówno w setA, jak i setB.

Nowy zestaw intersectionSetjest tworzony za pomocą new Set(). Następnie for… ofpętla jest używana do iteracji przez setB. Dla każdego elementu, który jest obecny zarówno w setA, jak i setB, są one dodawane do zbioru przecięć.

Przykład 3: Operacja ustawiania różnicy

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

Wynik

 Zestaw („mango”, „pomarańczowy”)

Operacja różnicy zestawów reprezentuje elementy, które są obecne w jednym zestawie, a nie w innym zestawie.

Zestaw diff zawiera wszystkie elementy setA. Następnie for… ofpętla jest używana do iteracji przez wszystkie elementy setB. Jeśli element, który jest obecny w setB, jest również dostępny w zestawieA, ten element jest usuwany przy użyciu delete()metody.

Przykład 4: Operacja ustawiania podzbioru

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

Wynik

 prawdziwe

Operacja set subset zwraca wartość true, jeśli wszystkie elementy setB znajdują się w setA.

for… ofPętli służy do pętli setb elementów. Jeśli jakikolwiek obecny element jest setB, nie ma go w setA, falsejest zwracany.

Interesujące artykuły...