Я никак не могу понять, зачем они нужны.
let a = 4;
let b = 5;
function f() {a+b};
Типо объявил вначале и всё? Зачем их передавать? Или дело в области видимости?
JavaScript
Аргументы функции. JavaScript
в данном примере - нет особого смысла, разве что показать область видимости
Вот например имеем массив чисел. Нужно узнать сумму цифр каждого числа этого массива. Для этого пишем функцию и в цикле применяем ее для каждого числа массива. Как это по вашему сделать не передавая в функцию никаких аргументов?
function sum(a) {
s = 0;
do {s += a % 10;
a = parseInt(a / 10);
}
while (a > 0);
return s
}
let arr = [324,98,56,123,5678];
for (var i = 0; i < arr.length; i++) {
console.log(sum(arr[i]))
};
function sum(a) {
s = 0;
do {s += a % 10;
a = parseInt(a / 10);
}
while (a > 0);
return s
}
let arr = [324,98,56,123,5678];
for (var i = 0; i < arr.length; i++) {
console.log(sum(arr[i]))
};
ну например надо тебе в проекте площадь круга счтать часто, проект у тебя такой круги рисует и тебя достало каждый раз писать формулу целиком, тогда ты можешь запхать формулу в функцию и вызывать ее предавая все необходимые параметры т е радиус так как площадь вобщем то ни от чего больше не зависит. это учебный пример а в реальных проектах формулы сложнее и функции создают функции которые вызываются внутри функций еще и применительно к разным обектам.


А что если нужно сложить не только а и б, а любые два числа?
Отпишитесь, когда озарение придет для чего это нужно. Я уже и забыл, что вначале пути даже такие очевидные вещи могут быть непонятны.
у тебя функция неполноценная работает лишь с твоими проходными залетными
переменными
пример полноценной функции
function plus_umn( a1, a2 ){
let otv = a1 + a2; // работаем с данными
/* что обрабатываем по требованию */
return otv * 2;
}
переменными
пример полноценной функции
function plus_umn( a1, a2 ){
let otv = a1 + a2; // работаем с данными
/* что обрабатываем по требованию */
return otv * 2;
}
Вообще основной смысл аргументов в том, чтобы функцию можно было переиспользовать для множества разных переменных: например у Вас есть a,b,c,d. При этом в функции у Вас a+b, и поэтому в случае необходимости сложить c+d, придётся писать вторую такую же функцию, но уже с c + d внутри. А если же Вы зададите функции аргументы, например (first, second), то уже внутри неё Вы будете делать сложение переданных в функцию чисел\строк, то есть first + second. В таком случае, при всего-лишь одной функции, можно будет складывать любые две переменных, а не только фиксированные внутри неё a + b.
В этом мануале, ближе к середине, есть пример (тут аргументы называют параметрами): https://learn.javascript.ru/function-basics
В этом мануале, ближе к середине, есть пример (тут аргументы называют параметрами): https://learn.javascript.ru/function-basics
Похожие вопросы
- Объясните мне, пожалуйста, что это за аргументы функции в javascript ( function(arg1, arg2, ..) ).
- Почему split не работает и правильно ли написана функция? javascript. Помогите, пожалуйста
- Виды функций JavaScript
- Вопрос по JavaScript, обращение к функции, которая находится в функции...
- почему в javascript в функцию можно передавать параметры без типа?
- Помогите с JavaScript (локальные/глобальные переменные/функции)
- Можете привести примеры функции перемешивания массива в javascript? -_-
- У javascript есть аналог этих функций и методов, как в python?
- Есть ли аналоги JavaScript?
- С чего начать учить JavaScript?
function f() { var1+var2}
Если же
function f(tmp,tmp2) { tmp+tmp2} - Это же не имеет логики?! Они объявляются в функции и не имеют значений. А всё что имеет значения - объявлено раньше
b = 2,
c =3,
d = 4,
e =5,
f = 6
function sum(num1, num2) {
return num1+num2
sum(a, b)
sum(b, c)
sum(d, e)
sum(f, a)
sum(b, f)