JS-zelfstudie

JS HOME JS Introductie JS Waarheen? JS-uitgang JS-verklaringen JS-syntaxis JS-opmerkingen JS-variabelen JS Let JS Const JS-operators JS Rekenen JS-opdracht JS-gegevenstypen JS-functies JS-objecten JS-evenementen JS-snaren JS String-methoden JS String zoeken JS String-sjablonen JS-nummers JS-nummermethoden JS-arrays JS-array-methoden JS-array sorteren JS-array-iteratie JS Array Const JS-datums JS-datumnotaties JS Datum Ophaalmethoden Methoden voor het instellen van JS-datum JS Math JS Willekeurig JS Booleans JS-vergelijkingen JS-voorwaarden JS-schakelaar JS Loop For JS-lus voor binnen JS Loop For Of JS-lus terwijl JS Break JS-iteraties JS-sets JS-kaarten JS Typeof JS Type conversie JS Bitwise JS RegExp JS-fouten JS-bereik JS Hijsen JS strikte modus JS dit trefwoord JS-pijlfunctie JS-lessen JS JSON JS-foutopsporing JS-stijlgids JS-best practices JS-fouten JS-prestaties JS Gereserveerde Woorden

JS-versies

JS-versies JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Edge JS-geschiedenis

JS-objecten

Objectdefinities Objecteigenschappen Objectmethoden Objectweergave Objectaccessoires Objectconstructeurs Objectprototypes Object-Iterables Objectsets Objectkaarten Objectreferentie

JS-functies

Functiedefinities Functieparameters: Functie-aanroep Functie-oproep: Functie Toepassen Functie Sluitingen

JS-lessen

Klas Intro Klasse Overerving Klasse Statisch

JS Asynchrone

JS-callbacks JS asynchroon JS belooft JS Async/Wachten

JS HTML DOM

DOM Intro DOM-methoden DOM-document DOM-elementen DOM HTML DOM-formulieren DOM-CSS DOM-animaties DOM-evenementen DOM-gebeurtenisluisteraar DOM-navigatie DOM-knooppunten DOM-collecties DOM-knooppuntlijsten

JS-browserstuklijst

JS-venster JS-scherm JS-locatie JS-geschiedenis JS-navigator JS pop-upwaarschuwing JS-timing JS-koekjes

JS Web API's

Introductie web-API Web Forms API Webgeschiedenis-API Webopslag-API Web Worker-API Web Fetch-API Webgeolocatie-API

JS AJAX

Ajax-intro AJAX XMLHttp Ajax-verzoek Ajax-reactie AJAX XML-bestand AJAX PHP Ajax ASP AJAX-database AJAX-toepassingen Ajax-voorbeelden

JS JSON

JSON-intro JSON-syntaxis JSON versus XML JSON-gegevenstypen JSON ontleden JSON Stringify JSON-objecten JSON-arrays JSON-server JSON PHP JSON HTML JSON JSONP

JS versus jQuery

jQuery-kiezers jQuery HTML jQuery CSS jQuery DOM

JS-graphics

JS-graphics JS Canvas JS Plotly JS Chart.js JS Google-kaart JS D3.js

JS-voorbeelden

JS-voorbeelden JS HTML DOM JS HTML-invoer JS HTML-objecten JS HTML-evenementen JS-browser JS-editor JS-oefeningen JS-quiz JS-certificaat

JS-referenties

JavaScript-objecten HTML DOM-objecten


JavaScript-kaarten

Een kaart bevat sleutel-waardeparen waarbij de sleutels elk gegevenstype kunnen zijn.

Een kaart onthoudt de oorspronkelijke invoegvolgorde van de toetsen.

Een kaart heeft een eigenschap die de grootte van de kaart vertegenwoordigt.

Kaartmethoden

MethodeBeschrijving
nieuwe kaart()Maakt een nieuw kaartobject
set()Stelt de waarde in voor een sleutel in een kaart
krijgen()Haalt de waarde op voor een sleutel in een kaart
Doorzichtig()Verwijdert alle elementen van een kaart
verwijderen()Verwijdert een kaartelement gespecificeerd door een sleutel
heeft()Retourneert waar als een sleutel in een kaart bestaat
voor elk()Roept een callback op voor elk sleutel/waarde-paar in een map
vermeldingen()Retourneert een iteratorobject met de [key, value]-paren in een Map
sleutels()Retourneert een iteratorobject met de sleutels in een kaart
waarden()Retourneert een iteratorobject van de waarden in een kaart
EigendomBeschrijving
maatRetourneert het aantal kaartelementen

Een kaart maken

U kunt een JavaScript-kaart maken door:

  • Een array doorgeven aannew Map()
  • Maak een kaart en gebruikMap.set()

nieuwe kaart()

U kunt een kaart maken door een array door te geven aan de new Map()constructor:

Voorbeeld

// Create a Map
const fruits = new Map([
  ["apples", 500],
  ["bananas", 300],
  ["oranges", 200]
]);

kaart.set()

U kunt elementen aan een kaart toevoegen met de set()methode:

Voorbeeld

// Create a Map
const fruits = new Map();

// Set Map Values
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);

De set()methode kan ook worden gebruikt om bestaande kaartwaarden te wijzigen:

Voorbeeld

fruits.set("apples", 500);

Kaart.get()

De get()methode krijgt de waarde van een sleutel in een kaart:

Voorbeeld

fruits.get("apples");    // Returns 500


Kaart grootte

De sizeeigenschap retourneert het aantal elementen in een kaart:

Voorbeeld

fruits.size;

Kaart.delete()

De delete()methode verwijdert een kaartelement:

Voorbeeld

fruits.delete("apples");

Map.clear()

De clear()methode verwijdert alle elementen van een kaart:

Voorbeeld

fruits.clear();

Kaart.heeft()

De has()methode retourneert true als er een sleutel in een map bestaat:

Voorbeeld

fruits.has("apples");

Probeer dit:

fruits.delete("apples");
fruits.has("apples");

Kaarten zijn objecten

typeofretourneert object:

Voorbeeld

// Returns object:
typeof fruits;

instanceofKaart retourneert waar:

Voorbeeld

// Returns true:
fruits instanceof Map;

JavaScript-objecten versus kaarten

Verschillen tussen JavaScript-objecten en kaarten:

ObjectKaart
itereerbaar Niet direct itereerbaar Direct itereerbaar
Maat Heb geen eigenschap voor grootte Heb een eigenschap van de grootte
Sleuteltypes Sleutels moeten strings (of symbolen) zijn Sleutels kunnen elk datatype zijn
Sleutelvolgorde Sleutels zijn niet goed besteld Sleutels worden geordend door invoeging
Standaardinstellingen Standaardsleutels hebben Heb geen standaardsleutels

Map.forEach()

De forEach()methode roept een callback op voor elk sleutel/waarde-paar in een kaart:

Voorbeeld

// List all entries
let text = "";
fruits.forEach (function(value, key) {
  text += key + ' = ' + value;
})

Map.keys()

De keys()methode retourneert een iteratorobject met de sleutels in een kaart:

Voorbeeld

// List all keys
let veggies = "";
for (const x of fruits.keys()) {
  veggies += x;
}

Kaart.waarden()

De valuesmethode retourneert een iteratorobject met de waarden in een kaart:

Voorbeeld

// Sum all values
let total = 0;
for (const x of fruits.values()) {
  total += x;
}

Map.entries()

De entries()methode retourneert een iteratorobject met de [key,values] in een Map:

Voorbeeld

// List all entries
let text = "";
for (const x of fruits.entries()) {
  text += x;
}

Objecten als sleutels

Het kunnen gebruiken van objecten als sleutels is een belangrijke kaartfunctie.

Voorbeeld

// Create Objects
const apples = {name: 'Apples'};
const bananas = {name: 'Bananas'};
const oranges = {name: 'Oranges'};

// Create a Map
const fruits = new Map();

// Add new Elements to the Map
fruits.set(apples, 500);
fruits.set(bananas, 300);
fruits.set(oranges, 200);

Onthoud: de sleutel is een object (appels), geen string ("appels"):

Voorbeeld

fruits.get("apples");  // Returns undefined

Browserondersteuning

JavaScript-kaarten worden ondersteund in alle browsers, behalve Internet Explorer:

Chrome Edge Firefox Safari Opera