# Массив с анонимными функциями в JavaScript

Я уже упоминал ранее, что функции в JavaScript ведут себя, будто строки или числа. В частности, можно сделать массив, состоящий из функций. Сделаем:

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

Давайте, например, выведем в консоль содержимое нулевого элемента массива:

`let arr = [ function() {console.log('1')}, function() {console.log('2')}, function() {console.log('3')}, ]; console.log(arr[0]); // увидим исходный код первой функции`

Как вы видите, в примере выше мы получаем исходный код функции, а не результат.

Чтобы происходил вызов функции, к ней нужно дописать круглые скобки. Так как наша функция хранится в `arr[0]`, то круглые скобки нужно будет написать после квадратных, вот так: `arr[0]()`. Проверим:

`let arr = [ function() {console.log('1')}, function() {console.log('2')}, function() {console.log('3')}, ]; arr[0](); // выведет '1'`

Можно также перебрать наш массив с функциями циклом и в этом цикле вызвать каждую из функций:

`let arr = [ function() {console.log('1')}, function() {console.log('2')}, function() {console.log('3')}, ]; for (let func of arr) { func(); // вызываем наши функции в цикле }`

Сделайте массив `arr` с тремя функциями. Пусть первая возвращает через `return` число `1`, вторая - число `2`, третья - число `3`.

Используя созданный вами массив `arr` выведите в консоль число `3`, вызвав соответствующую функцию.

Используя созданный вами массив `arr` найдите сумму результатов функций (без цикла).

Переберите созданный вами массив `arr` циклом и выведите результаты работы всех функций в консоль.

←→
↑
en ru