Efficiënt scripten met jQuery 3.x
  • Over deze cursus
  • 1 Inleiding
  • 2 Inleiding tot JavaScript
    • Events en Actions
    • Syntax regels
    • JavaScript debugger
    • Variabelen
    • Operatoren
    • Voorwaardelijke instructies
    • Lussen
    • Functies
    • Functies in jQuery
    • Scope (zichtbaarheid) van variabelen
    • Objecten
    • Ingebouwde JavaScriptobjecten
  • 3 jQuery basis
  • 4 Elementen selecteren
    • Basis selectors
    • Hiërarchische selectors
    • Basisfilters
    • Inhoudsfilters
    • Attribuut selectors
    • Childfilters
    • Formulierfilters
    • Zichtbaarheidsfilters
    • Toepassing 1: gemeentelijst filteren (basisversie)
    • Toepassing 2: openingsuren markeren
  • 5 Selectie verfijnen (traversing)
    • Hiërarchische selectors
    • Filter methodes
    • Element looping: each()
    • Selecties in cascade: end()
    • Snelheidstest
    • Toepassing 1: gemeentelijst filteren (uitgebreide versie)
    • Toepassing 2: rating
  • 6 Events
    • Documentevents
    • Gebruikersevents
    • Event bubbling
    • Event methodes en properties
    • Hover-event: methode met een dubbele functie
    • De methode on()
    • Event handlers verwijderen
    • Toepassing 1: reactietest
  • 7 Animaties en effecten
    • Basiseffecten
    • Aangepaste animaties
    • Animatie pauzeren: delay()
    • Animatie beëindigen: finish()
    • Animatie afbreken: stop()
    • Versnellingsparameter
    • Toepassing 1: vloeiend scrollen
    • Toepassing 2: tabbladen
  • 8 DOM manipulatie
    • HTML-attributen
    • Object dimensies
    • Elementen toevoegen
    • Elementen verwijderen
    • Elementen vervangen
    • Elementen klonen
    • Toepassing 1: lightbox
  • 9 Inleiding tot AJAX
    • Historiek
    • Wat is XML?
    • Wat is JSON?
    • Requests filteren met GET en POST
    • Zes soorten AJAX requests
    • Same origin policy
    • Cross-site scripting
  • 10 AJAX zonder server-side scripting
    • Load()
    • $.getScript()
    • $.getJSON()
    • $.get() en $.post()
    • $.ajax()
    • Externe gegevens ophalen via JSONP
  • 11 AJAX met server-side scripting
    • Master/detailrelatie met load()
    • Master/detailrelatie met $.get()
    • Contactformulier verzenden met $.post()
    • Cross-site scripting (XSS)
Powered by GitBook
On this page
  • For
  • While
  • Do-while
  1. 2 Inleiding tot JavaScript

Lussen

For

// for-lus
for (van; tot; teller verhogen){
    // herhaalt n-maal dezelfde instructie.
}

★ Open jsIntro/for.html. ★ Vul een getal in en klik vervolgens op de tabtoets (= blur-event). ★ Bekijk de broncode.

// Tellen met For-lus
$('#getal').blur(function(){ 
    var getal = $(this).val(); 
    var txt = '';
    for(var i = 0; i<= getal ; i++) { 
        txt += i + '<br>';
    }
    $('#resultaat').html(txt);
});

Het getal wordt in de variabele getal geplaatst. De tweede variabele txt is een lege string. Binnen de for lus wordt een variabele i aangemaakt en krijgt i de waarde 0. Vervolgens wordt de lus uitgevoerd (i<=getal). Op de linkse afbeelding is de stapgrootte 1 (i wordt telkens met 1 verhoogd via i++).

★ Pas de code als volgt aan. for(var i = 0; i <= getal ; i++) wordt for(var i = 0; i <= getal ; i += 5) ★ Test het resultaat opnieuw in een browser.

De teller wordt nu met een stapgrootte van 5 verhoogd (afbeelding rechts).

In een lus wordt de declaratie van de teller vaak weggelaten. Beide oplossingen zijn mogelijk: for( i = 0; i <= tot ; i++) en for(var i = 0; i <= tot ; i++)

While

Deze lus wordt vaak gebruikt in situaties waarbij het aantal stappen op voorhand onbekend is. De lus stopt op het moment dat de voorwaarde false (onwaar) is.

while (voorwaarde) {
    // voer instructie uit en verhoog de teller
}

★ Open jsIntro/while.html. ★ Vul een getal in en klik vervolgens op de tabtoets. ★ Bekijk de broncode.

$('#getal').blur(function(){ 
    var van = 0;
    var tot = $(this).val(); 
    var txt= '';
    var i = van; 
    while(i <= tot) {
        txt += i + ', ';
        i++;    // teller verhogen!
    }
    $('#resultaatWhile').html(txt);
});

Het resultaat van dit voorbeeld is een teller van van tot tot. De while-lus loopt zolang i kleiner dan of gelijk is aan de waarde van tot.

Vergeet binnen een while-lus vooral niet de waarde van de teller met één te verhogen (i++), anders blijft de lus oneindig lopen!

In bovenstaand voorbeeld is de telcyclus wel op voorhand gekend en kan u eventueel een for-lus gebruiken. U hoeft de teller dan ook niet binnen de lus te verhogen.

// zelfde bewerking met for-lus 
var txt= '';
var i = van;
for(i=0; i<= tot ; i++) { 
    txt += i + ', ';
}
$('#resultaatFor').html(txt);

Do-while

Deze lus is bijna identiek aan de while-lus. Een while-lus wordt enkel uitgevoerd indien de voorwaarde true is. Indien de startvoorwaarde al false is, wordt de lus helemaal niet uitgevoerd.

do {
   // voer instructie uit en verhoog de teller
} while (voorwaarde);

In tegenstelling tot een while-lus, wordt een do-while-lus altijd minstens één maal uitgevoerd, ook al is de beginvoorwaarde false. De test gebeurt immers helemaal op het einde, nadat de bewerking reeds is uitgevoerd.

// zelfde bewerking als while, maar nu met een do-while lus
var txt= '';
var i = van; 
do {
    txt += i + ', ';
    i++;    // teller verhogen
} while (i <= tot);
$('#resultaatDoWhile').html(txt);
PreviousVoorwaardelijke instructiesNextFuncties

Last updated 7 years ago