Inhoud

  1. Geen paragrafen H1 - Voorwoord
  2. Geeft paragrafen weer H2 - Wat is JavaScript?
    1. §1. Wat kun je met JavaScript?
    2. §2. De script-tag
    3. §3. Opdrachten
  3. Geeft paragrafen weer H3 - Statements (opdrachten)
    1. §1. Wat zijn statements?
    2. §2. Functie document.write
    3. §3. Commentaar
    4. §4. Functie alert
    5. §5. Opdrachten
  4. Geeft paragrafen weer H4 - Variabelen
    1. §1. Wat is een variabele?
    2. §2. Variabelen maken en gebruiken
    3. §3. Functie prompt
    4. §4. Operatoren
    5. §5. Strings
    6. §6. Opdrachten
  5. Geeft paragrafen weer H5 - Functies
    1. §1. Wat is een functie?
    2. §2. Functies maken en gebruiken
    3. §3. Functies die iets teruggeven
    4. §4. Parameters en argumenten
    5. §5. De scope van variabelen
    6. §6. Opdrachten
  6. Geeft paragrafen weer H6 - Loops en voorwaardes
    1. §1. Wat zijn loops en voorwaardes?
    2. §2. Het if-else statement
    3. §3. Vergelijkingen en hun operatoren
    4. §4. Functie confirm
    5. §5. Het switch-statement
    6. §6. De while-loop
    7. §7. De for-loop
    8. §8. Stoppen door break
    9. §9. Opdrachten
  7. Geeft paragrafen weer H7 - Events
    1. §1. Wat is een event?
    2. §2. Events maken en gebruiken
    3. §3. Welke events zijn er?
    4. §4. Variabele this
    5. §5. Variabele window.event
    6. §6. Opdrachten
  8. Geeft paragrafen weer H8 - Array
    1. §1. Wat is een Array?
    2. §2. Een Array maken en gebruiken
    3. §3. Een Array doorlopen
    4. §4. Een associatieve array
    5. §5. De for-in loop
    6. §6. Opdrachten
  9. Geeft paragrafen weer H9 - Objecten
    1. §1. Wat is een object?
    2. §2. Verschil object en variabele
    3. §3. Eigenschappen
    4. §4. Methodes
    5. §5. Eigenschappen en methodes
    6. §6. Opdrachten
  10. Geeft paragrafen weer H10 - Globale objecten
    1. §1. Wat zijn globale objecten?
    2. §2. Het window object
    3. §3. Het document object
    4. §4. Het Math object
    5. §5. Standaard HTML-Element object
    6. §6. Een HTML-Table object
    7. §7. Opdrachten

Hoofdstuk 6 - Opdracht 7

De opdracht:

Doe hetzelfde als opdracht 5, alleen nu gebruik je een while-statement. Je code mag dit keer meer statements bevatten dan alleen het while-statement.
Ook mag je er nu niet meer van uit gaan dat er een geldig getal wordt ingevuld, blijf dus net zo lang om een getal van 1 t/m 10 vragen totdat je een geldige invoer hebt gekregen.

Het antwoord:

Je zal 2 while-loops nodig hebben: een voor het tellen en een voor de invoer.

JavaScript:
  1. var x;
  2.  
  3. // Eerst vraag je om een waarde voor x, daarvan controleer je vervolgens of het een getal is
  4. // Als het geen getal is, levert 'isNaN()' true, dus wordt gaat de while-loop door
  5. // Dus komt er een berichtje over de foute invoer, en wordt er weer opnieuw om een invoer gevraagd
  6. // De while-loop gaat ook door als x kleiner dan 1 of groter dan 10 is.
  7. // Hier mag op getallen gecontroleerd worden omdat als je aan die controle toe komt, x zeker weten een getal is
  8. // Want als het dat niet was had 'isNaN()' al true gegeven en was de rest van de vergelijking dus ook sowieso true (want het zijn OF-operatoren)
  9. // en dus wordt de rest van de vergelijking niet meer uitgevoerd
  10. while(isNaN(x = prompt("Voer een getal van 1 t/m 10 in", '10')) || x < 1 || x > 10)
  11. {
  12. alert("Dat is geen geldige invoer!");
  13. }
  14.  
  15. // Loop om af te tellen, die stopt als x lager dan 0 is
  16. while(x >= 0)
  17. {
  18. document.write(x-- + "<br />"); // Gebruik eerst de waarde van x en zet die op het scherm, verlaag daarna x
  19. }