Parametry o tej samej nazwie w JavaScript
Załóżmy teraz, że funkcja zewnętrzna i wewnętrzna mają parametry o tej samej nazwie:
function test(num) {
function func(num) {
console.log(num); // wyświetli 1
}
func(num);
};
test(1);
W tym przypadku wewnątrz funkcji wewnętrznej będzie
istniała zmienna lokalna num. Jej zmiana
w funkcji wewnętrznej w żaden sposób nie wpłynie
na zewnętrzną zmienną num:
function test(num) {
function func(num) {
num = 2; // zmieniamy zmienną lokalną num
}
func(num);
console.log(num); // wyświetli 1 - nic się nie zmieniło
}
test(1);
Okaże się, że funkcja wewnętrzna w żaden sposób nie
będzie mogła uzyskać dostępu do zewnętrznej zmiennej num,
aby ją zmienić:
function test(num) {
function func(num) {
// tutaj nie można uzyskać dostępu do zewnętrznej zmiennej num
}
func(num);
}
test(1);
Określ, bez uruchamiania kodu, co zostanie wyświetlone w konsoli:
function test(num) {
function func(num) {
console.log(num);
}
func(num);
}
test(1);
Określ, bez uruchamiania kodu, co zostanie wyświetlone w konsoli:
function test(num) {
function func(num) {
num = 2;
}
func(num);
console.log(num);
}
test(1);
Określ, bez uruchamiania kodu, co zostanie wyświetlone w konsoli:
function test(num) {
function func(num) {
console.log(num);
}
num = 2;
func(num);
}
test(1);
Określ, bez uruchamiania kodu, co zostanie wyświetlone w konsoli:
function test(num) {
function func(num) {
console.log(num);
}
func(num);
num = 2;
}
test(1);