Как работает передача параметров в функцию javascript?

Объясните пожалуйста почему в этом коде:
var a = 3, b = 2, c = 4;
function test(a, b, c) {
  var d = b * (a + c);
  console.log(d);
}

test(b, c, a);


На выходе получается 20, а не 14?...
  • Вопрос задан
  • 451 просмотр
Решения вопроса 1
@yii16
Потому что параметры передаются на то место где они стоят, например:
var a = 2;
var b = 4;
var c = 5;
function test(x,y,z) {

}
test(a,b,c)

Так x станет а
y станет b
z старнет с
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Это упражнение на область видимости переменных в JavaScript.

Внутри функции test переменные a, b, c – совсем не те же, что снаружи. Называются одинаково, это сбивает с толку, но означают разное.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы