JavaScript Sets

JavaScript is the world's most popular programming language.
JavaScript is the programming language of the Web.
JavaScript is easy to learn.
This tutorial will teach you JavaScript from basic to advanced.
Post Reply
Guest

JavaScript Sets

Post by Guest »

JavaScript Sets


A JavaScript Set is a collection of unique values.
Each value can only occur once in a Set.
A Set can hold any value of any data type.

Set Methods

MethodDescription
new Set()Creates a new Set
add()Adds a new element to the Set
delete()Removes an element from a Set
has()Returns true if a value exists
clear()Removes all elements from a Set
forEach()Invokes a callback for each element
values()Returns an Iterator with all the values in a Set
keys()Same as values()
entries()Returns an Iterator with the [value,value] pairs from a Set


PropertyDescription
sizeReturns the number elements in a Set


How to Create a Set
You can create a JavaScript Set by:

Passing an Array to new Set()
Create a new Set and use add() to add values
Create a new Set and use add() to add variables


The new Set() Method
Pass an Array to the new Set() constructor:

Example

// Create a Set
const letters = new Set(["a","b","c"]);

Try it Yourself »

Create a Set and add literal values:

Example

// Create a Set
const letters = new Set();

// Add Values to the Set
letters.add("a");
letters.add("b");
letters.add("c");

Try it Yourself »

Create a Set and add variables:

Example

// Create Variables
const a = "a";
const b = "b";
const c = "c";

// Create a Set
const letters = new Set();

// Add Variables to the Set
letters.add(a);
letters.add(b);
letters.add(c);

Try it Yourself »


The add() Method

Example

letters.add("d");
letters.add("e");

Try it Yourself »

If you add equal elements, only the first will be saved:

Example

letters.add("a");
letters.add("b");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");
letters.add("c");

Try it Yourself »








The forEach() Method
The forEach() method invokes a function for each Set element:

Example

// Create a Set
const letters = new Set(["a","b","c"]);

// List all entries
let text = "";
letters.forEach (function(value) {
  text += value;
})

Try it Yourself »


The values() Method
The values() method returns an Iterator object containing all the values in a Set:

Example

letters.values()   // Returns [object Set Iterator]

Try it Yourself »

Now you can use the Iterator object to access the elements:

Example

// Create an Iterator
const myIterator = letters.values();

// List all Values
let text = "";
for (const entry of myIterator) {
  text += entry;
}

Try it Yourself »


The keys() Method

A Set has no keys.
keys() returns the same as
values().
This makes Sets compatible with Maps.


Example

letters.keys()   // Returns [object Set Iterator]

Try it Yourself »


The entries() Method

A Set has no keys.
entries() returns [value,value] pairs
instead of [key,value] pairs.
This makes Sets compatible with Maps:


Example

// Create an Iterator
const myIterator = letters.entries();

// List all Entries
let text = "";
for (const entry of myIterator) {
  text += entry;
}

Try it Yourself »


Sets are Objects

For a Set, typeof returns object:

typeof letters;      // Returns object

Try it Yourself »
For a Set, instanceof Set returns true:

letters instanceof Set;  // Returns true

Try it Yourself »














+1

Reference: https://www.w3schools.com/js/js_object_sets.asp
Post Reply