Tablica z funkcjami anonimowymi w JavaScript
Wspomniałem wcześniej, że funkcje w JavaScript zachowują się jak ciągi znaków lub liczby. W szczególności, można utworzyć tablicę składającą się z funkcji. Stwórzmy:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
Spróbujmy na przykład wyświetlić w konsoli zawartość zerowego elementu tablicy:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
console.log(arr[0]); // zobaczymy kod źródłowy pierwszej funkcji
Jak widać w powyższym przykładzie, otrzymujemy kod źródłowy funkcji, a nie wynik.
Aby nastąpiło wywołanie funkcji, należy
dodać do niej nawiasy okrągłe. Ponieważ nasza funkcja
jest przechowywana w arr[0], to nawiasy okrągłe
należy wpisać po kwadratowych, w ten
sposób: arr[0](). Sprawdźmy:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
arr[0](); // wyświetli '1'
Możemy również przejść pętlą przez naszą tablicę funkcji i w tej pętli wywołać każdą z funkcji:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
for (let func of arr) {
func(); // wywołujemy nasze funkcje w pętli
}
Utwórz tablicę arr z trzema funkcjami.
Niech pierwsza zwraca przez return
liczbę 1, druga - liczbę 2,
trzecia - liczbę 3.
Korzystając z utworzonej przez siebie tablicy arr
wyświetl w konsoli liczbę 3, wywołując
odpowiednią funkcję.
Korzystając z utworzonej przez siebie tablicy arr
znajdź sumę wyników funkcji (bez pętli).
Przejdź pętlą przez utworzoną przez siebie tablicę arr
i wyświetl wyniki działania wszystkich
funkcji w konsoli.