Globale veranderlikes en funksieparameters in JavaScript
Laat ons 'n funksie hê wat 'n getal as parameter aanvaar:
function func(localNum) {
console.log(localNum);
}
Laat daar buite die funksie 'n veranderlike num wees:
function func(localNum) {
console.log(localNum);
}
let num = 1; // eksterne globale veranderlike
Kom ons roep ons funksie aan, en gee die
veranderlike num as parameter daaraan:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num); // roep funksie met parameter aan, sal 1 vertoon
Dit sal beteken dat binne die funksie beide die
veranderlike localNum (die funksieparameter)
en die veranderlike num (as 'n eksterne
veranderlike) beskikbaar sal wees:
function func(localNum) {
console.log(num); // sal 1 vertoon
console.log(localNum); // sal 1 vertoon
}
let num = 1;
func(num);
Die veranderlike localNum self sal 'n lokale
veranderlike van die funksie wees en sal nie van buite
af toeganklik wees nie:
function func(localNum) {
}
let num = 1;
func(num); // roep funksie met parameter aan
console.log(localNum); // sal 'n fout gee
Aangesien die veranderlike localNum lokaal is,
sal enige veranderinge daaraan niks aan die buitekant
verander nie:
function func(localNum) {
localNum = 2; // verander niks buite nie
}
let num = 1;
func(num);
As jy egter die veranderlike num (die globale)
binne verander, sal die veranderinge ook buite verskyn:
function func(localNum) {
num = 2;
}
let num = 1;
func(num);
console.log(num); // sal 2 vertoon
Indien jy egter die veranderlike num binne die
funksie via let verklaar, sal ons sodoende 'n
lokale veranderlike num skep wat geen invloed op
die eksterne veranderlike het nie:
function func(localNum) {
let num = 2; // verklaar via let
}
let num = 1;
func(num);
console.log(num); // sal 1 vertoon - niks het verander nie
Bepaal, sonder om die kode te laat loop, wat in die konsole vertoon sal word:
function func(localNum) {
console.log(localNum);
}
func(1);
Bepaal, sonder om die kode te laat loop, wat in die konsole vertoon sal word:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num);
Bepaal, sonder om die kode te laat loop, wat in die konsole vertoon sal word:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num);
num = 2;
Bepaal, sonder om die kode te laat loop, wat in die konsole vertoon sal word:
let num = 1;
function func(localNum) {
console.log(localNum);
}
num = 2;
func(num);
Bepaal, sonder om die kode te laat loop, wat in die konsole vertoon sal word:
function func(localNum) {
localNum = 2;
}
let num = 1;
func(num);
console.log(num);
Bepaal, sonder om die kode te laat loop, wat in die konsole vertoon sal word:
function func(localNum) {
num = 2;
}
let num = 1;
func(num);
console.log(num);
Bepaal, sonder om die kode te laat loop, wat in die konsole vertoon sal word:
function func(localNum) {
let num = 2;
}
let num = 1;
func(num);
console.log(num);