- Notifications
You must be signed in to change notification settings - Fork8
terkelg/zet
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
JavaScript Set() as it should be.
ECMAScript 6 sets have no methods for computing the union (∪), intersection (∩) or difference (⊖).Zet is an extension of ES6Set
and comes with all its functionality included with extra set logic.The API is similar to how sets work inPython.
Additions to the default ECMAScript 6 set
- Union (∪)
- Intersection (∩)
- Difference/subtract (-)
- Symmetric difference (⊖)
- Subset (⊆)
- Superset (⊇)
- Map
- Filter
- Reduce
Additionally, this module is delivered as:
- ES Module:
dist/zet.mjs
- CommonJS:
dist/zet.js
- UMD:
dist/zet.umd.js
$ npm install --save zet
importZetfrom'zet';leta=newZet([1,2,3]);letb=newZet([3,4,5]);letc=newZet([2,3,4]);Zet.union(a,b);//=> [Zet] {1, 2, 3, 4, 5}a.union(b,c);//=> [Zet] {1, 2, 3, 4, 5}a.intersection(b);//=> [Zet] {3}a.symmetricDifference(c);//=> [Zet] {1, 4}a.subset(b);//=> falsea.filter(i=>i%2);//=> [Zet] {1, 3}
Returns:Zet
Returns the Zet instance.
Zet extendsSet()
and inherit all its functionality, likehas()
,size()
etc.
Returns:zet
Static variadic function that return a new set with elements from all othersets
.
Type:Zet|Set
Two or more sets of typeZet
orSet
.
Returns:zet
Static variadic function that return a new set with elements common tothis
and all othersets
.
Type:Zet|Set
Two or more sets of typeZet
orSet
.
Returns:zet
Returns the difference between two or more sets. The order of the sets matters. Sets are differentiated against the first argument/set.
Type:Zet|Set
Two or more sets of typeZet
orSet
.
Returns:zet
Static function that return a new set with elements in either setA or setB but not both.
Type:Zet|Set
Set A of typeZet
orSet
.
Type:Zet|Set
Set B of typeZet
orSet
.
Returns:Boolean
Test whether every element insetB
is insetA
.
Type:Zet|Set
Set of typeZet
orSet
.
Type:Zet|Set
Set of typeZet
orSet
.
Returns:Boolean
Test whether every element insetA
is insetB
.
Type:Zet|Set
Set of typeZet
orSet
.
Type:Zet|Set
Set of typeZet
orSet
.
Returns:Zet|Set
Creates a set with the results of calling the provided function on every element.
Type:Zet|Set
Set of typeZet
orSet
.
Type:Function
Function that produces an element of the new set.
Returns:Zet|Set
Creates a set with all elements that pass the test implemented by the provided function.
Type:Zet|Set
It is the set going to be examined.
Type:Function
It is a predicate, to test each element of the set.
Returns:Number
Reduces the set to a single value, by executing the provided function for each element in the set (from left-to-right).
Type:Zet|Set
Set of typeZet
orSet
.
Type:Function
Function to be executed for each element in the set.
Type:Number
Optional. A value to be passed to the function as the initial value.
Returns:zet
Variadic method that return a new set with elements fromthis
and all othersets
.
Type:Zet|Set
One or more sets of typeZet
orSet
.
Returns:zet
Variadic method that return a new set with elements common tothis
and all othersets
.
Type:Zet|Set
One or more sets of typeZet
orSet
.
Returns:zet
Variadic method tht return a new set with elements inthis
that are not in the othersets
.
Type:Zet|Set
One or more sets of typeZet
orSet
.
Returns:zet
Method that return a new set with elements in eitherthis
orother
but not both. This is also known as xor.
Type:Zet|Set
Set of typeZet
orSet
.
Returns:Boolean
Test whether every element in the set is inother
.
Type:Zet|Set
Set of typeZet
orSet
.
Returns:Boolean
Test whether every element inother
is in the set.
Type:Zet|Set
Set of typeZet
orSet
.
Returns:Zet|Set
Creates a set with the results of calling the provided function on every element.
Type:Function
Function that produces an element of the new set.
Returns:Zet|Set
Creates a set with all elements that pass the test implemented by the provided function.
Type:Function
It is a predicate, to test each element of the set.
Returns:Number
Reduces the set to a single value, by executing the provided function for each element in the set (from left-to-right).
Type:Function
Function to be executed for each element in the set.
Type:Number
Optional. A value to be passed to the function as the initial value.
MIT ©Terkel Gjervig