Book Image

Learning JavaScript Data Structures and Algorithms - Second Edition

By : Loiane Groner
Book Image

Learning JavaScript Data Structures and Algorithms - Second Edition

By: Loiane Groner

Overview of this book

This book begins by covering basics of the JavaScript language and introducing ECMAScript 7, before gradually moving on to the current implementations of ECMAScript 6. You will gain an in-depth knowledge of how hash tables and set data structure functions, as well as how trees and hash maps can be used to search files in a HD or represent a database. This book is an accessible route deeper into JavaScript. Graphs being one of the most complex data structures you’ll encounter, we’ll also give you a better understanding of why and how graphs are largely used in GPS navigation systems in social networks. Toward the end of the book, you’ll discover how all the theories presented by this book can be applied in real-world solutions while working on your own computer networks and Facebook searches.
Table of Contents (18 chapters)
Learning JavaScript Data Structures and Algorithms - Second Edition
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface

ES6 – the Set class


ECMAScript 2015 introduced a Set class as part of the JavaScript API. We developed our Set class based on the ES6  Set class.

Note

You can see the details of the ECMAScript 6 Set class implementation at https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set (or http://goo.gl/2li2a5 ).

Now, let's take a look at how we can use the native Set class, as well.

Let's use the same examples we used to test our Set class, as follows:

let set = new Set(); 
set.add(1); 
console.log(set.values()); //outputs @Iterator 
console.log(set.has(1));   //outputs true 
console.log(set.size);   //outputs 1 

The difference between our Set class and the ES6 Set class is that the values method returns Iterator (which you learned in Chapter 2 Arrays ) instead of the array with the values. Another difference is that we developed a size method to return the number of values set stores. The ES6 Set class has a property named size.

We can also call the delete method to...