Параметры функции в JavaScript
- Что такое параметр функции
- Функция без параметров
- Один параметр
- Несколько параметров
- Порядок параметров
- Параметры внутри функции
- Имена параметров
- Если значение не передали
- Итого
Параметры функции - это имена переменных, которые функция получает при вызове. Они записываются в круглых скобках после имени функции.
function showMessage(text) {
console.log(text);
}
showMessage('Я изучаю функции');
В этом примере text - параметр функции. При вызове функции в него попадает строка ‘Я изучаю функции’.
Что такое параметр функции
Параметр нужен, чтобы функция могла работать не с одним заранее записанным значением, а с разными данными.
Например, такая функция всегда выводит один и тот же текст.
function greetUser() {
console.log('Привет, Анна!');
}
greetUser();
Если добавить параметр, функция станет гибче.
function greetUser(name) {
console.log('Привет, ' + name + '!');
}
greetUser('Анна');
greetUser('Игорь');
Результат:
Привет, Анна!
Привет, Игорь!
Одна функция выполнила одну и ту же задачу для разных имен.
Функция без параметров
Параметры не обязательны. Если функция не ждет внешних данных, круглые скобки просто остаются пустыми.
function showHello() {
console.log('Привет!');
}
showHello();
Такая функция каждый раз выполняет одно и то же действие.
Один параметр
Если функции нужно одно значение, достаточно одного параметра.
function double(number) {
console.log(number * 2);
}
double(5);
double(12);
Результат:
10
24
В JavaScript рядом с параметром не указывают его тип. Мы пишем только имя параметра.
Несколько параметров
Если функции нужно несколько значений, параметры записываются через запятую.
function showUserInfo(name, age) {
console.log(name + ', возраст: ' + age);
}
showUserInfo('Мария', 27);
Результат:
Мария, возраст: 27
Количество параметров зависит от задачи. Если функция выводит имя и возраст, ей нужны два параметра. Если только имя - один.
Порядок параметров
Порядок параметров важен. Первое переданное значение попадает в первый параметр, второе - во второй, и так далее.
function showOrder(product, price) {
console.log('Товар: ' + product);
console.log('Цена: ' + price);
}
showOrder('Книга', 900);
Результат:
Товар: Книга
Цена: 900
Если поменять значения местами при вызове, JavaScript не будет угадывать, что имелось в виду.
showOrder(900, 'Книга');
Теперь product получит 900, а price получит ‘Книга’.
Параметры внутри функции
Внутри функции параметр используется как обычная локальная переменная.
function calculateDiscount(price) {
let discount = price * 0.1;
let result = price - discount;
console.log(result);
}
calculateDiscount(1000);
Результат:
900
Параметр price доступен внутри функции calculateDiscount(). Снаружи этой функции его использовать нельзя.
Имена параметров
Имя параметра должно помогать понимать, какое значение ожидает функция.
function createGreeting(userName) {
console.log('Добро пожаловать, ' + userName + '!');
}
userName понятнее, чем x, потому что сразу видно, что функция ждет имя пользователя.
Короткие имена вроде a и b обычно используют только в маленьких математических функциях.
function sum(a, b) {
return a + b;
}
Если значение не передали
Если параметр есть, но при вызове для него не передали значение, внутри функции он будет равен undefined.
function greetUser(name) {
console.log('Привет, ' + name + '!');
}
greetUser();
Результат:
Привет, undefined!
Это не синтаксическая ошибка, функция все равно выполнится. Но результат может быть не таким, как ожидалось. Для таких случаев в JavaScript есть параметры по умолчанию, их разберем отдельно.
Итого
1. Параметры функции записываются в круглых скобках после имени функции.
2. Параметры позволяют одной функции работать с разными данными.
3. Параметры внутри функции ведут себя как локальные переменные.
4. Если параметров несколько, порядок переданных значений имеет значение.
5. Если значение для параметра не передали, он будет равен undefined.