Параметры и аргументы
Наши функции пока что каждый раз делают одно и то же. Но чтобы вычислить площадь любого прямоугольника, функции нужно знать его ширину и высоту. Такие значения функция получает через параметры:
function introduce(name) {
console.log(`Меня зовут ${name}.`);
}
introduce("Анна");
introduce("Тимур");Это выведет:
Меня зовут Анна.
Меня зовут Тимур.В определении name в скобках — это параметр: переменная, которую функция может использовать в своём теле. Создавать её через let не нужно; её создают скобки в определении. В вызове значение в скобках, "Анна", — это аргумент. Когда вы вызываете функцию, аргумент сохраняется в параметре, и после этого выполняется тело. При первом вызове name равно "Анна", при втором — "Тимур".
Эти два слова легко перепутать, поэтому запомните: параметр — это имя в определении, аргумент — это значение в вызове.
У функции может быть несколько параметров, они разделяются запятыми. Аргументы попадают в параметры по порядку: первый аргумент — в первый параметр, второй — во второй, и так далее:
function introduce(name, age) {
console.log(`Имя: ${name}, возраст: ${age}.`);
}
introduce("Анна", 21);
introduce(21, "Анна");Это выведет:
Имя: Анна, возраст: 21.
Имя: 21, возраст: Анна.Во втором вызове аргументы поменяны местами, поэтому 21 попало в name, а "Анна" — в age. JavaScript не интересует, что значат значения, — важен только порядок.
Теперь можно решить задачу из начала урока: одна функция, которая выводит площадь любого прямоугольника.
Задание
- 1
Создайте функцию
printAreaс двумя параметрами,widthиheight. В её теле выведитеwidth * height. - 2
Под функцией вызовите её с аргументами
5и6. Программа выведет30. - 3
Вызовите
printAreaещё два раза для остальных прямоугольников из начала урока: с аргументами10и5, а затем1и5. Теперь программа выведет30,50и5, как и длинный код в начале, но каждый прямоугольник занимает всего одну строку.