Parametre for overførte funksjoner i JavaScript
La oss si at vi har en funksjon test som
tar en annen funksjon som parameter og skriver ut
resultatet av denne overførte funksjonen til konsollen:
function test(func) {
console.log( func() );
}
La den overførte funksjonen func ta et tall
som parameter og gjøre noe med det. La oss sende
det for eksempel tallet 3:
function test(func) {
console.log( func(3) );
}
La oss nå kalle funksjonen test
ved å sende en anonym funksjon som parameter.
Denne anonyme funksjonen skal ta et tall
som parameter og returnere kvadratet av dette tallet.
Som et resultat av alt dette vil konstruksjonen vår
skrive ut kvadratet av tallet 3, det vil si 9:
// Vil skrive ut 9:
test(
function(num) {
return num * num;
}
);
function test(func) {
console.log(func(3));
}
La oss strukturere koden mer elegant:
// Vil skrive ut 9:
test(function(num) {
return num * num;
});
function test(func) {
console.log(func(3));
}
Kopier koden til min funksjon test.
Kall denne funksjonen ved å sende den
en anonym funksjon som parameter, som
vil ta et tall som parameter og returnere dens kubikk.
Endre koden din slik at den overførte
funksjonen ikke er anonym, men er definert
som en Function Declaration med navnet func.
Endre den overførte funksjonen til Function
Expression med samme navn func.
La den overførte funksjonen nå ta
to parametre og returnere summen deres.
Ved kall av den overførte funksjonen
inni test, send tallet 2
og tallet 3 til den overførte funksjonen.
Skriv ut resultatet.