Parametry przekazywanych funkcji w JavaScript
Załóżmy, że mamy funkcję test, która
parametrem przyjmuje inną funkcję i w konsolę
wypisuje wynik pracy tej przekazanej funkcji:
function test(func) {
console.log( func() );
}
Załóżmy, że przekazana funkcja func parametrem
przyjmuje liczbę i coś z nią robi. Przekażmy
jej, na przykład, liczbę 3:
function test(func) {
console.log( func(3) );
}
Zadzwońmy teraz funkcją test,
przekazując w nią parametrem funkcję anonimową.
Ta funkcja anonimowa parametrem będzie przyjmować
liczbę i zwracać kwadrat tej liczby.
W wyniku tego wszystkiego nasza konstrukcja
wypisze kwadrat liczby 3, czyli 9:
// Wypisze 9:
test(
function(num) {
return num * num;
}
);
function test(func) {
console.log(func(3));
}
Sformatujmy kod bardziej elegancko:
// Wypisze 9:
test(function(num) {
return num * num;
});
function test(func) {
console.log(func(3));
}
Skopiuj kod mojej funkcji test.
Wywołaj tę funkcję, przekazując jej parametrem
funkcję anonimową, która parametrem będzie
przyjmować liczbę i zwracać jej sześcian.
Przerób swój kod tak, aby przekazywana
funkcja nie była anonimowa, a była zdefiniowana
jako Function Declaration z nazwą func.
Przerób przekazywaną funkcję na Function
Expression z tą samą nazwą func.
Załóżmy, że przekazywana funkcja teraz przyjmuje
dwa parametry i zwraca ich sumę. Przy
wywołaniu przekazywanej funkcji wewnątrz test
przekaż w przekazywaną funkcję liczbę 2
i liczbę 3. Wypisz wynik.