Creating a Set class
ECMAScript 2015 introduced the Set
class as part of the JavaScript API, and you will learn how to use this later on in this chapter. We will create our own implementation of the Set
class based on the ES2015Set
class. We will also implement some set operations such as union, intersection, and difference, that are not present in the ES2015 native class.
To get started, the following is the Set
class declaration with its constructor:
class Set { constructor() { this.items = {}; } }
A very important detail here is that we are using an object to represent our set (items
) instead of an array. However, we could also use an array in this implementation. The approach we will follow in this chapter is very similar to the items
object approach we used in Chapter 4, Stacks, and Chapter 5, Queues and Deques. Also, objects in JavaScript do not allow you to have two different properties on the same key, which guarantees unique elements in our set.
Next, we need to declare the...