JavaScript'te İsimsiz Fonksiyonlardan Oluşan Dizi
Daha önce de belirttiğim gibi, JavaScript'te fonksiyonlar tıpkı stringler veya sayılar gibi davranır. Özellikle, fonksiyonlardan oluşan bir dizi oluşturabiliriz. Hadi yapalım:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
Örneğin, dizinin sıfırıncı elemanının içeriğini konsola yazdıralım:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
console.log(arr[0]); // ilk fonksiyonun kaynak kodunu göreceğiz
Yukarıdaki örnekte gördüğünüz gibi, sonucu değil, fonksiyonun kaynak kodunu alıyoruz.
Fonksiyonun çağrılması için, ona
yuvarlak parantezler eklenmelidir. Fonksiyonumuz
arr[0] içinde saklandığından, yuvarlak parantezler
köşeli parantezlerden sonra yazılmalıdır, işte
şöyle: arr[0](). Kontrol edelim:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
arr[0](); // '1' yazdıracak
Ayrıca, fonksiyon dizimizi bir döngü ile gezip bu döngüdeki her fonksiyonu çağırabiliriz:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
for (let func of arr) {
func(); // fonksiyonlarımızı döngüde çağırıyoruz
}
Üç fonksiyondan oluşan bir arr dizisi yapın.
İlkinin return ile
1 sayısını döndürmesini sağlayın,
ikinci - 2 sayısını,
üçüncü - 3 sayısını döndürsün.
Oluşturduğunuz arr dizisini kullanarak
ilgili fonksiyonu çağırarak konsola 3
sayısını yazdırın.
Oluşturduğunuz arr dizisini kullanarak
fonksiyon sonuçlarının toplamını bulun (döngü olmadan).
Oluşturduğunuz arr dizisini bir döngü ile
gezin ve tüm fonksiyonların çalışma sonuçlarını
konsola yazdırın.