Низ анонимних функција у JavaScript

Већ сам раније помињао да се функције у JavaScript понашају као да су ниске или бројеви. Конкретно, можемо направити низ који се састоји од функција. Хајде да направимо:

javascriptlet arr = [
  function() {console.log('1')},
  function() {console.log('2')},
  function() {console.log('3')},
];

Хајде, на пример, да испишемо у конзолу садржај нултог елемента низа:

javascriptlet arr = [
  function() {console.log('1')},
  function() {console.log('2')},
  function() {console.log('3')},
];

console.log(arr[0]); // видећемо изворни код прве функције

Као што видите, у примеру изнад добијамо изворни код функције, а не резултат.

Да би се десило позивање функције, треба јој дописати заграде. Пошто је наша функција сачувана у arr[0], заграде ће треба да се напишу после квадратних, ево овако: arr[0](). Хајде да проверимо:

javascriptlet arr = [
  function() {console.log('1')},
  function() {console.log('2')},
  function() {console.log('3')},
];

arr[0](); // исписаће '1'

Можеш такође проћи кроз наш низ са функцијама петљом и у тој петљи позвати сваку од функција:

javascriptlet arr = [
  function() {console.log('1')},
  function() {console.log('2')},
  function() {console.log('3')},
];

for (let func of arr) {
  func(); // позивамо наше функције у петљи
}
Задание 1

Направи низ arr са три функције. Нека прва врати преко return број 1, друга - број 2, трећа - број 3.

Задание 2

Користећи направљени низ arr испиши у конзолу број 3, позвавши одговарајућу функцију.

Задание 3

Користећи направљени низ arr пронађи збир резултата функција (без петље).

Задание 4

Прођи кроз направљени низ arr петљом и испиши резултате свих функција у конзолу.