Overensstemmelse af navne med parametre i JavaScript
Funktionsparametre er lokale variable inden i den. Lad os navngive funktionens parameter med samme navn som en ekstern global variabel:
function func(num) {
console.log(num);
}
let num = 1;
func(num);
I dette tilfælde vil det resultere i, at
uden for funktionen vil der være en variabel num
og inde i funktionen vil der være en variabel num.
Men disse vil være forskellige variable: ændring af
variablen inde i funktionen vil føre
til ændring af funktionens lokale variabel.
Og den eksterne variabel vil inde i
funktionen være utilgængelig og kan ikke
ændres på nogen måde. Lad os tjekke:
function func(num) {
num = 2; // ændrer den lokale variabel
}
let num = 1;
func(num);
console.log(num); // vil udskrive 1 - intet ændrede sig
Bestem, uden at køre koden, hvad der udskrives i konsollen:
function func(num) {
num = 2;
}
let num = 1;
func(num);
console.log(num);
Bestem, uden at køre koden, hvad der udskrives i konsollen:
function func() {
num = 2;
}
let num = 1;
func();
console.log(num);
Bestem, uden at køre koden, hvad der udskrives i konsollen:
function func() {
let num = 2;
}
let num = 1;
func();
console.log(num);