JavaScript Basiscursus
Basis
Introductie
JavaScript uitvoeren
Eerste programma in JavaScript
Programmacode analyseren
Verdere voorbeelden
Bestanden met scripts
Meerdere bestanden
Opmerking
Bestanden cachen
Strike modus
Opmerkingen
Variabelen
Variabelen gebruiken
Meerdere variabelen declareren
Waarden van variabelen wijzigen
Meerdere let voor één variabele
Wiskundige bewerkingen met getallen
Wiskundige bewerkingen met variabelen
Prioriteit van wiskundige bewerkingen
Gelijke prioriteit
Groeperende haakjes
Breuken
Negatieve getallen
Plus voor variabelen
Rest van deling
Machtsverheffen
Prioriteit van machtsverheffen
Strings
Strings optellen
Lengte van string
Sjabloonstrings
Meerdere regels
Speciale waarden
Waarde undefined
Waarde null
Waarden true en false
Waarde NaN
Infinity en -Infinity
Console
Gegevenstype in console
Fouten in console
Constanten
Automatische typeconversie
Conversie naar getal
Korte conversie naar getal
Conversie van incorrecte getallen
Getallen extraheren
Conversie naar string
Conversie naar string toepassen
Logische typeconversie
Conversie naar logisch type
String karakters
Onveranderlijkheid van strings
Laatste karakter van string
Strings met cijfers
Toegang tot cijfers van getal
Bewerkingen om variabele te wijzigen
Verkorte bewerkingen in JavaScript
Incrementatie
Prefix en postfix type
Onnauwkeurige berekeningen
Functie prompt
Probleem met types in prompt
Uitvoer naar document
Praktijk: fouten zoeken
Praktijk: bewerkingen
Praktijk: formules
Arrays
Inleiding tot arrays
Elementen ophalen
Lengte van array
Elementen wijzigen
Elementen van array herschrijven
Incrementatie van elementen
Elementen toevoegen via sleutels
Sparse arrays
Elementen toevoegen via push
Sleutels uit variabelen
Operator delete
Praktijk: fouten zoeken
Objecten
Inleiding tot objecten
Volledig object weergeven
Objecten met string sleutels
Objecteigenschappen
Beperkingen voor sleutels
Elementen wijzigen
Elementen toevoegen
Ongeordendheid van objecten
Array van object sleutels
Lengte van een object
Sleutels uit variabelen
Fout bij toegang tot element
Fout bij toegang tot eigenschap
Berekende eigenschappen
De in operator
De delete operator
Typen van objecten
Arrays als objecten
Arrays onderscheiden van objecten
Objecten en primitieven
Objecten doorgeven by referentie
Constanten
Programmeerbenadering via constanten
Praktijk: fouten zoeken
Voorwaarden
If-else constructie
Groter dan en kleiner dan operatoren
Gelijkheid controleren
Ongelijkheid controleren
Variabelen vergelijken
Gelijkheid van strings
Gelijkheid van strings en getallen
Gelijkheid in waarde en type
Ongelijkheid in waarde en type
Logische EN
Logische OF
Prioriteit van logische operatoren
Groeperen van voorwaarden
Inverteren van logische expressies
Voorwaarden met booleaanse waarden
Vergelijken met booleaanse waarden
Verkorte vorm voor waarheid controleren
Verkorte vorm voor onwaarheid controleren
Algemene verkorte controle vorm
Samengestelde voorwaarden in verkorte vorm
Optioneel karakter van else constructie
Optioneel karakter van accolades
Probleem van optionele accolades
Else if constructie
Geneste if-else constructies
Switch-case constructie
Optioneel karakter van break
Ternaire operator
Logische bewerkingen
Confirm functie
Bereik (Scope)
Nuances van bereik (scope)
Controleren van uur delen
Controleren van lengte van strings en arrays
Controleren van string karakters
Controleren van cijfers van een getal
Controleren van restwaarde na deling
Praktijk: fouten zoeken
Praktijk
Lussen
Inleiding
For-of lus
For-in lus
While lus
For lus
For lus voor arrays
Voorwaarden in lussen
Optellen van getallen
Optellen van elementen
Vormen van strings
Cijfers van een getal
Optionele accolades
Probleem met optionele haakjes
Break instructie
Continue instructie
Geneste lussen
Bereik
Geneste lussen en bereik
Vullen van arrays
Wijzigen van arrays
Vullen van objecten
Wijzigen van objecten
Werken met vlaggen
Tips voor het schrijven van code
Tips voor het debuggen van code
Praktijk voor het vinden van fouten
Praktijk
Multidimensionaliteit
Multidimensionale arrays
Driedimensionale array
Willekeurige arrays
Iteratie van multidimensionale arrays
Iteratie met een gewone for-lus
Vullen van multidimensionale arrays
Problemen bij het vullen van multidimensionale arrays
Multidimensionale arrays in volgorde vullen
Multidimensionale objecten
Iteratie van multidimensionale objecten
Multidimensionale structuren
Iteratie van multidimensionale structuren
Array van objecten
Sleutels uit variabelen
Elementen toevoegen aan arrays
Elementen toevoegen aan objecten
Standaard methoden
Machtsverheffing
Afrondfuncties
Extremen
Willekeurig
Absolute waarden
Hoofdletters en kleine letters
Strings uitknippen
Zoeken in strings
Vervangen in strings
Splitsen van strings
Uiteindelijke elementen
Delen van arrays
Arrays uitknippen
Zoeken in arrays
Object sleutels
Praktijk in fouten zoeken
Gebruikersgedefinieerde functies
Inleiding
Functieparameters
Meerdere parameters
Parameters-variabelen
Optionele parameters
Return instructie
Opeenvolgend aanroepen van functies
Subtiel punt van return
Lus en return
Toepassing van return in lussen
Truc voor werken met return
Vlaggen in functies
Logische operatoren in functies
Adviezen voor functies
Praktijk voor het vinden van fouten
Praktijk op functies
Functievariabelen
Globale variabelen
Lokale variabelen
Naamsovereenkomst van variabelen
Wijzigen van globale variabelen
Globale variabelen en functieparameters
Naamsovereenkomst met parameters
Parameterobjecten
Functietypen
Broncode van functie en resultaat
Functie als variabele
Functie in een andere variabele schrijven
Toewijzen van functies aan variabelen
Overeenkomst van functienaam en variabelenaam
Soorten declaraties
Verschil functiedeclaraties
Puntkomma bij het declareren van functies
Nuances van functionele expressies
Functie met naam, maar Function Expression
Genaamde functionele expressies
Hoe het type van een functie controleren
Expressie aan de linkerkant
Expressie aan de rechterkant
Array met functies
Object met functies
Toepassen van object met functies
Geneste functies
Functies doorgeven als parameters
Genaamde functies
Parameters van doorgegeven functies
Getal doorgeven als parameter
Toepassing
Interne functies
Bereik van geneste functies
Parameters van externe functie
Parameters van externe en interne functies
Parameters met dezelfde naam
Functie die een functie teruggeeft
Elk niveau van nesting
Parameters van teruggegeven functie
Callback-functies
Nuances van callbacks
Pijlfuncties
Toepassing van pijlfuncties
synch. met vertaling
Closures
Toegang tot externe variabelen
Lexicale omgeving van functies
Toepassing van lexicale omgeving
Introductie tot closures
Teller met closures
Nuance lokale variabele
Nuance globale variabele
IIFE
Functie direct uitgevoerd
Functie toewijzen aan variabele
Toepassing van direct uitgevoerde functie
Ronde haakjes
Parameters
Meerdere aanroepen
Valkuilen
Beveiligingspuntkomma
Closures en IIFE
Recursie
Inleiding
Voorbeeld met parameter
Som van array-elementen met recursie
Multidimensionale structuren
Som van array-elementen
Manipulaties met structuren
Iteratiemethoden
Methode map
Methode forEach
Methode filter
Methode every
Methode some
Methode find
vertaling, taken
Methode reduce
vertaling, taken
Spread operator
Inleiding
Meer geavanceerde voorbeelden
Extreme arraywaarden
Samenvoegen van arrays
Splitsen van strings
Splitsen van getallen
Rest operator
Destructurering
Destructurering van arrays
Array uit functie
Overslaan van array-elementen
Overbodige array-waarden
Rest van de array
Standaardwaarden voor arrays
Standaardfuncties voor arrays
Variabelendeclaratie voor arrays
Destructurering van objecten
Variabelennamen voor objecten
Standaardwaarden voor objecten
Variabelen en standaardwaarden voor objecten
Variabelendeclaratie voor objecten
Functieparameters
Destructurering van objecten als functieparameters
Tijd
Werken met het Date-object
Formatteren
Datumformaat wijzigen
Dag van de week verkrijgen
Datum in woorden weergeven
Tijd instellen
Timestamp-formaat
Verschil tussen timestamps
Verschil tussen datumobjecten
Automatische datumcorrectie
Laatste dag van de maand vinden
Schrikkeljaar bepalen
Correctheid controleren
Dag van het huidige jaar verkrijgen
Dag van de volgende of vorige maand
Dag van het volgende of vorige jaar
Verschil tussen momenten
Tijdstip van de dag
Begin van de dag
Einde van de dag
Cyclische controle van tijdstippen
Praktijk met tijdstippen
Stringvergelijking
Datumvergelijking zonder jaar
Datum in interval checken
Datumobjecten vergelijken
Inleiding tot DOM
Inleiding
DOM elementen
Verkrijgen van DOM elementen
Geavanceerde DOM element selectors
Binden van event handlers
Genoemde event handlers
Één handler voor meerdere elementen
Handlers voor hetzelfde event
Handlers voor verschillende events
Element tekst
HTML code van element
Tag attributen als properties
Werken met tekstvelden
Focus van tekstvelden
Uitzonderingsattributen
Methoden- en eigenschappenketens
Voor- en nadelen van ketens
Het this object
Voordeel van this
Verkrijgen van een groep elementen
Genoemde handlers in een lus
Anonieme handlers in een lus
Ontbinden van event handlers
Ontbinden van handlers in een lus
Ontbinden van anonieme handlers
Tips voor het schrijven van code
Praktijk voor het vinden van fouten
Praktijk
Attributen
Methode voor het ophalen van attributen
Methode voor het instellen van attributen
Methode voor het verwijderen van attributen
Methode voor het controleren van attributen
Aangepaste attributen
Attribuutnamen met koppeltekens
Toegang tot attributen via methoden
Array van CSS-klassen
Toevoegen van CSS-klassen
Verwijderen van CSS-klassen
Controleren van CSS-klassen
Toggle van CSS-klassen
Styling
Stylen via het style attribuut
Stylen van eigenschappen met een koppelteken
Uitzondering bij het stylen van elementen
Stylen via CSS klassen
Voordeel van stylen met CSS klassen
Toepassen van styling
Zoeken
Elementafstammelingen vinden
Elementouders vinden
Alle elementouders zoeken
Elementburen zoeken
Element zoeken op id
Element zoeken op tagnaam
Element zoeken op klassenaam
Zoeken binnenin een element
Knooppunten
Inleiding
Knooppunten doorlopen met een lus
Naam van knooppunten
Type knooppunten
Tekst van knooppunten
Formulieren
Werken met textarea
Elementen uitschakelen
Werken met checkboxen
Afwisseling van attributen zonder waarden
Werken met radioknoppen
Change gebeurtenis
Input gebeurtenis
Focus en blur methoden
Praktijk voor het vinden van fouten
Dropdownlijsten
Werken met dropdownlijsten
Value attribuut in dropdownlijsten
Geselecteerd lijstitem wijzigen
Nummer van het geselecteerde lijstitem
Dropdownlijstitems verkrijgen
Items als een array
Werken met dropdownlijstitems
Lijstitem selecteren
Geselecteerd item verkrijgen
Event Object
Basisprincipes van het Event Object
Gebeurteniscoördinaten
Gebeurtenistype
Gebeurteniselement
Ingedrukte toetsen verkrijgen
Modifier-toetsen volgen
Standaardactie annuleren
Bubbelen van gebeurtenissen
Doelelement bij bubbelen
Bubbelen van gebeurtenissen stoppen
Meerdere handlers op een element
Onmiddellijk stoppen van bubbelen
Toepassing van het stoppen van bubbelen
Capturing van gebeurtenissen
Handlers op nieuwe elementen
Delegatie van gebeurtenissen
Universele gebeurtenisdelegatie
Context
Basiswerk met context
Context van een ongebonden functie
Context verlies
Oplossing voor het contextprobleem
Oplossing via een variabele
Oplossing via een parameter
Oplossing via een pijlfunctie
Call methode
Call methode met parameters
Apply methode
Bind methode
Timers
Timer starten
Teller op timer
Timer stoppen
Knoppen om te starten
Meervoudige start
Knoppen om te stoppen
Werken met DOM
Timers en contextverlies
Praktijk op timers en DOM
Vertraging voor uitvoering
Timer via vertraging
Elementen manipuleren
Elementen maken en invoegen
Gebeurtenissen koppelen bij invoeging
Elementen maken in een lus
Handlers koppelen in een lus
Elementen verwijderen
Invoegen aan de rand
Invoegen voor
Aangrenzende invoeging
Aangrenzende invoeging van tags
Elementen klonen
Elementen controleren
Praktijk
Elementen aanmaken vanuit een array
Praktijk op het aanmaken van ul-lijsten
Tabellen aanmaken
Consistente vulling van tabellen
Tabel aanmaken vanuit een array
Tabel aanmaken vanuit een array van objecten
Rijen en kolommen toevoegen aan een tabel
Aanpassen van tabelcellen
Verwijderen van nieuwe elementen
Link voor het verwijderen van een element
Verwijderlinks aanmaken
Bewerken van een enkel element
Tekst verbergen tijdens bewerken
Bewerken in een set elementen
Verwijderen en bewerken
Styling van elementen
Knoppen voor het verbergen en tonen van een element
Veel elementen met tonen-knoppen
Activeren van elementen
Afwisseling van activeringsstijlen
Praktijk op het aanpassen van elementen
Functies en DOM
Functies voor het werken met een DOM-element
Functies voor het werken met een groep elementen
Callback doorgeven voor het werken met DOM
Volgnummer doorgeven in callback
Element doorgeven als functieparameter
Groep elementen doorgeven als parameters
Functie voor het maken van HTML-tabellen
Tabel teruggeven uit functie
Functie voor het maken van een tabel uit een array