Конспект «Функции». Раздел 1
Функция
Функция — кусок кода, который можно написать один раз, а затем многократно использовать. Функция не просто содержит в себе значение, как переменная, а выполняет какое-то действие и решает какую-то задачу: считает, сравнивает, ищет.
Код внутри { }
называется «телом функции».
let functionName = function () {
// Тело функции
};
Чтобы функция начала свою работу, её надо вызвать. Для этого нужно обратиться к функции по её имени, а затем указать круглые скобки.
functionName();
Параметры и аргументы функции
Параметры — значения, с помощью которых можно настраивать функции. Так мы можем узнать результат работы функции для разных случаев.
В момент объявления функции, в круглых скобках, мы создаём параметры. Здесь всё, как с переменными: сначала задаём параметрам имена, которые описывают, что за значения будут в них записаны. Если параметров несколько, они записываются через запятую.
Параметры работают так же, как переменные. Мы подставляем их вместо фиксированных значений в операции внутри функции. При выполнении кода вместо каждого параметра подставится его значение.
В момент вызова функции мы указываем в круглых скобках те значения, которые окажутся в параметрах.
let showTime = function (hours, minutes) {
console.log('Текущее время: ' + hours + ':' + minutes);
};
showTime(3, 15); // Выведет: Текущее время: 3:15
showTime(16, 20); // Выведет: Текущее время: 16:20
Правильно говорить «функция принимает параметры», но при этом мы «передаём функции аргументы».
Если у функции указан параметр, но аргумент не передан, то значение параметра в теле функции будет undefined
— то есть «не определено».
Передавать аргументы надо в том же порядке, в котором объявлены параметры функции.
Возвращение из функции
Функции умеют возвращать результат своей работы. Это значит, что функция может выполнить код и отдать результат операций для дальнейшей работы с этим результатом. Он подставится в то место кода, где мы вызвали функцию.
Чтобы функция вернула значение, мы используем оператор return
. После оператора указываем, что именно надо вернуть. Когда программа доходит до строки с return
, функция отдаёт результат своей работы и выполнение кода из тела функции останавливается, иными словами происходит выход из функции.
- Код, написанный на новой строке после
return
, не выполняется. - Функция не может вернуть сразу много значений, она возвращает только один результат.
- Если внутри функции нет
return
или послеreturn
не указано, какое значение нужно вернуть, функция вернётundefined
, иными словами, ничего.
Пример функции:
let calculateSum = function (numberFirst, numberSecond) {
let sum = numberFirst + numberSecond;
return sum;
};
calculateSum(); // Вернёт NaN
calculateSum(2); // Вернёт NaN
calculateSum(2, 5); // Вернёт 7
calculateSum(9, 5); // Вернёт 14
В этом примере:
calculateSum
— имя, по которому можно обратиться к функции.numberFirst
,numberSecond
— параметры функции.return sum;
— место кода, где происходит возвращениеsum
и выход из функции.calculateSum(2, 5);
— аргументы, которые передаются в функции при вызове. Порядок аргументов такой же, как у параметров функции. Первый аргумент2
записывается в первый параметрnumberFirst
, аргумент5
записывается в параметрnumberSecond
. Важно соблюдать порядок параметров при вызове функции, чтобы избежать неочевидных ошибок.