Я уже упоминал ранее, что функции в JavaScript ведут себя, будто строки или числа. В частности, можно сделать массив, состоящий из функций. Сделаем:
let arr = [
function() {alert('1')},
function() {alert('2')},
function() {alert('3')},
];
Давайте, например, выведем алертом содержимое нулевого элемента массива:
let arr = [
function() {alert('1')},
function() {alert('2')},
function() {alert('3')},
];
alert(arr[0]); // увидим исходный код первой функции
Как вы видите, в примере выше мы получаем исходный код функции, а не результат.
Чтобы происходил вызов функции, к ней нужно
дописать круглые скобки. Так как наша функция
хранится в arr[0]
, то круглые скобки
нужно будет написать после квадратных, вот
так: arr[0]()
. Проверим:
let arr = [
function() {alert('1')},
function() {alert('2')},
function() {alert('3')},
];
arr[0](); // выведет '1'
Можно также перебрать наш массив с функциями циклом и в этом цикле вызвать каждую из функций:
let arr = [
function() {alert('1')},
function() {alert('2')},
function() {alert('3')},
];
for (let func of arr) {
func(); // вызываем наши функции в цикле
}
Сделайте массив arr
с тремя функциями.
Пусть первая возвращает через return
число 1
, вторая - число 2
,
третья - число 3
.
Используя созданный вами массив arr
выведите на экран число 3
, вызвав
соответствующую функцию.
Используя созданный вами массив arr
найдите сумму результатов функций (без цикла).
Переберите созданный вами массив arr
циклом и выведите результаты работы всех
функций на экран.