# Одноименные параметры в JavaScript

Пусть теперь внешняя и внутренняя функция имеют одноименные параметры:

`function test(num) { function func(num) { console.log(num); // выведет 1 } func(num); }; test(1);`

В этом случае во внутренней функции будет локальная переменная `num`. Ее изменение во внутренней функции никак не будет влиять на внешнюю переменную `num`:

`function test(num) { function func(num) { num = 2; // меняем локальную переменную num } func(num); console.log(num); // выведет 1 - ничего не поменялось } test(1);`

Получится, что внутренняя функция никак не сможет обратиться к внешней переменной `num` для того, чтобы изменить ее:

`function test(num) { function func(num) { // тут нельзя получить доступ в внешней переменной num } func(num); } test(1);`

Определите, не запуская код, что выведется в консоль:

`function test(num) { function func(num) { console.log(num); } func(num); } test(1);`

Определите, не запуская код, что выведется в консоль:

`function test(num) { function func(num) { num = 2; } func(num); console.log(num); } test(1);`

Определите, не запуская код, что выведется в консоль:

`function test(num) { function func(num) { console.log(num); } num = 2; func(num); } test(1);`

Определите, не запуская код, что выведется в консоль:

`function test(num) { function func(num) { console.log(num); } func(num); num = 2; } test(1);`
← →
↑
en ru