JavaScript-də Anonim Funksiyalar Massivi
Mən əvvəllər qeyd etmişdim ki, JavaScript-də funksiyalar sətir və ya rəqəmlər kimi davranır. Xüsusilə, funksiyalardan ibarət massiv yaratmaq olar. Gəlin yaradaq:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
Gəlin, məsələn, massivin sıfırıncı elementinin məzmununu konsola çıxaraq:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
console.log(arr[0]); // birinci funksiyanın mənbə kodunu görəcəyik
Gördüyünüz kimi, yuxarıdakı nümunədə biz funksiyanın nəticəsini deyil, mənbə kodunu alırıq.
Funksiya çağırışının baş verməsi üçün ona
dairəvi mötərizələr əlavə etmək lazımdır. Bizim funksiyamız
arr[0]-da saxlandığı üçün dairəvi mötərizələr
kvadrat mötərizələrdən sonra yazılmalıdır, belə:
arr[0](). Gəlin yoxlayaq:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
arr[0](); // '1' çıxardacaq
Həmçinin funksiyalar massivini tsikllə keçə bilərik və bu tsikldə hər bir funksiyanı çağıra bilərik:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
for (let func of arr) {
func(); // funksiyalarımızı tsikldə çağırırıq
}
Üç funksiyadan ibarət arr massivi düzəldin.
Birinci funksiya return ilə
1 rəqəmini qaytarsın,
ikinci - 2 rəqəmini,
üçüncü - 3 rəqəmini qaytarsın.
Yaratdığınız arr massivindən istifadə edərək
müvafiq funksiyanı çağıraraq konsola 3 rəqəmini çıxardın.
Yaratdığınız arr massivindən istifadə edərək
funksiyaların nəticələrinin cəmini tapın (tsiklsiz).
Yaratdığınız arr massivini tsikllə keçin
və bütün funksiyaların iş nəticələrini konsola çıxardın.