Over verzamelingen in JavaScript

In het item "Over Verzamelingen" wordt in iets verteld over verzamelingen in het algemeen en over getallen in het bijzonder. Met Venn-diagrammen kunnen relaties tussen verzamelingen worden zichtbaar gemaakt.

JavaScript kent een datatype voor verzamelingen: Set.

Een Set is een Object. Het bevat een collectie uit alle in JavaScript mogelijke datatypen. Elk element is uniek.Voor het beheren van de data in de Set zijn een aantal methodes en één eigenschap beschikbaar.
Qua notatie ziet een Set er uit als een Array. Dat kan verwarrend zijn, wees daar dus op bedacht.

Onderstaand overzicht geeft de methodes voor verzamelingen in JavaScript.
Steeds wordt een set gebruikt die is gemaakt met:
let mijnSet = new Set(["a","b","c",1,2,3]);

Sinds 2025 is in JavaScript een aantal methodes toegevoegd, waarmee het mogelijk is om bewerkingen met verzamelingen uit te voeren, zie onderstaand overzicht en het item over Venn-diagrammen.
Deze methodes accepteren niet alleen sets als argument, maar alles wat er op lijkt, waaronder maps. Arrays en WeakSets horen daar niet bij.

De sets A en B zijn gemaakt met:
let A = new Set([1,2,3,4])
let B = new Set([2,4,6,8])

Tenslotte…
Een belangrijk onderdeel van de JavaScript-processor is de Garbage Collector (afgekort: GC, vertaald: "Vuilnisophaler"), Dit mechanisme zorgt ervoor dat de geheugenruimte die wordt ingenomen door niet (meer) gebruikte variabelen, functions, enz., wordt vrijgegeven tijdens de uitvoering van de applicatie. Dit houdt het geheugen 'schoon'. Het beperkt het geheugengebuik, waardoor de adressering efficiënter verloopt. Dit komt de snelheid van de applicatie ten goede. Het beperkt ook het risico van data-lekken.

In JavaScript zijn Sets hiervan uitgesloten!

Dit betekent dat intensief manipuleren van grote hoeveelheden data binnen Sets kan leiden tot toenemend geheugengebruik, trager worden van de applicatie en data-lekkage.

Toepassing van Sets lijkt voornamelijk te liggen in serverside-applicaties (met bijv. node.js) die websites aansturen. In een website (sec) ben ik het nog niet tegengekomen.

Bronnen:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set
https://www.w3schools.com/js/js_sets.asp

Opmerking:
 
Zie ook de items over WeakSets en Maps

 
terug

html-813; Laatste wijziging: 18 oktober 2025