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:

javascriptlet 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:

javascriptlet 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:

javascriptlet 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:

javascriptlet 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
}
Задание 1

Üç 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.

Задание 2

Yaratdığınız arr massivindən istifadə edərək müvafiq funksiyanı çağıraraq konsola 3 rəqəmini çıxardın.

Задание 3

Yaratdığınız arr massivindən istifadə edərək funksiyaların nəticələrinin cəmini tapın (tsiklsiz).

Задание 4

Yaratdığınız arr massivini tsikllə keçin və bütün funksiyaların iş nəticələrini konsola çıxardın.