Skip to main content

Les 4, Functions

We kennen nu de basis van JavaScript en gaan  nu de volgende stap maken in het leren van JavaScript. In de volgende lessen gaan we het hebben over functies, arrays, objects en loops.

In deze les gaan we leren wat een functie is.

Functions / Functies

Zie ook: https://www.w3schools.com/js/js_functions.asp

We hebben eigenlijk al kennis gemaakt met functies. We hebben in de eerste lessen de functie prompt gebruikt. Weet je nog? De functie prompt stelt een vraag aan de gebruiker, die dan iets moet invullen. De waarde die de gebruiker invoert wordt dan in een variable gestopt.

antwoord = prompt(vraag);

Wat hier staat is dat de functie prompt wordt opgeroepen en bij deze oproep wordt er een waarde meegegeven, deze waarde is de string "vraag". Een functie is een soort automaat; je gooit er wat in en je krijgt wat terug. IN de prompt functie stop je de vraag erin en je krijgt het antwoord eruit.

Je kunt zelf ook functies maken, bijvoorbeeld een functie die twee getallen optelt.

function myFunction(a, b) {
  	var antwoord;
	antwoord = a+b;
	return antwoord;
}

Een function begin je met function, dan komt de naam en dat zet je tussen haakjes twee variabelen. In deze variabelen komt te staan wat je in de funtie gooit (net als een automaat waar je muntjes in gooit). Dan begint de functie met een { en hij eindigt met een } . Daar tussenin staat de code van de functie; dus wat de funtie doet. In dit geval wordt er een variabele antwoord gemaakt en daar wat de som (de optelling) van a en b in gezet. Vervolgens wordt de waarde van de variabele terug gegeven als uitkomst.

parameters

Wat je in een functie 'gooit' heet ook wel de parameters

return value

Wat een functie terug geeft wordt ook wel de retun value genoemd.

Dus....

Een eigen gemaakte functie gebruik je net zoals een in JavaScript ingebouwde fucntie: de bovenstaande functie roep je aan door:

antw=myFunction(3, 4);

of

antw=myFunction(getal1, getal2);

of

docuement.write( myFunction(3,4) );

Waarom functies? Functeis worden gebruikt om twee redenen:

  1. Om lange programma's in nette blokjes op te delen en;
  2. om veel voorkomende stukken code één keer te maken in plaats van elke keer opnieuw.

Oefenen met functies

Opgave 1

Maak een functie myProduct met twee parameters en geef als return value het product (vermenigvuldigen) van deze twee parameters. Test of de functie werkt.

Opgave 2

Maak een functie uitroepteken met een parameter. Deze parameter is een string. De functie returned dezelfde string maar dan met een uitroepteken er aan vastgeplakt. Test of de functie werkt.

Opgave 3

Maak een functie getalGroterdanNul met één parameter, een getal. De functie returned één van de drie zinnen: het getal is kleiner dan nul, het getal is precies nul of het getal is groter dan nul. Het zinnetje dat door de functie wordt teruggeven hangt uiteraard af van de waarde van het getal wat je aan de functie meegeeft.

Opgave 4

Maak een functie posOptellen met twee parameters. Deze functie geeft de som (optelling) van de twee parameters terug maar als het getal negatief is dan wordt het getal eerst positief gemaakt. Dus, voorbeelden:

posOptellen(3,4) geeft 7 terug
posOptellen(-3,4) geeft 7 terug
posOptellen(3,-4) geeft 7 terug
posOptellen(-3,-4) geeft 7 terug

Test de functie en laat zien dat die werkt.

--