Javascript Sets

set

ES6 hat neue Datentypen mitgebracht: Set-Objekte sind Sammlungen von Werten eines beliebigen Typs. Die Werte müssen allerdings eindeutig sein.

18-12-15 SITEMAP

let books = new Set();

books.add ("Eine kurze Geschichte von fast allem");
books.add ("Accidental Empires")
	.add ("Arm und Reich")
	.add ("Die Reisegesellschaft")
	.add ("Bezaubernder April");

console.log (books);
console.log ("Wie viele Bücher sind im Set? ", books.size);
console.log ("Gehört 'Bezaubernder April' dazu?", books.has ("Bezaubernder April"));
books.delete ("Die Reisegesellschaft")
console.log ("Gehört 'Die Reisegesellschaft' noch dazu?", books.has ("Die Reisegesellschaft"));
[Log] Set {"Eine kurze Geschichte von fast allem", "Accidental Empires", "Arm und Reich", "Die Reisegesellschaft", "Bezaubernder April"} (5) 
[Log] Wie viele Bücher sind im Set?  – 5 
[Log] Gehört 'Bezaubernder April' dazu? – true 
[Log] Gehört 'Die Reisegesellschaft' noch dazu? – false 

In ein Set können beliebige Datentypen gesetzt werden, z.B. ein Array.

let arr = [117, 14, 228, 92, 92, 117, 18, 22, 117, 19, 92];
let set = new Set (arr);
console.log ('Array size', arr.length);
console.log ('Set size', set.size);
[Log] Array size – 11 (sets.html, line 185)
[Log] Set size – 7 (sets.html, line 186)

Das Array enthält eine Reihe von doppelten Werten: Im Javascript Set werden sie ausgemustert und nicht mitgezählt.