Naam-ooreenstemming met parameters in JavaScript

Parameters van 'n funksie is plaaslike veranderlikes binne dit. Kom ons noem die funksie se parameter met dieselfde naam as 'n eksterne globale veranderlike:

javascriptfunction func(num) {
  console.log(num);
}

let num = 1;
func(num);

In hierdie geval sal ons uiteindelik hê dat buite die funksie daar 'n veranderlike num sal wees en binne die funksie sal daar ook 'n veranderlike num wees. Maar dit sal verskillende veranderlikes wees: verandering van die veranderlike binne die funksie sal lei tot die verandering van die funksie se plaaslike veranderlike. En die eksterne veranderlike sal binne die funksie ontoeganklik wees en nie op enige manier verander kan word nie. Kom ons toets:

javascriptfunction func(num) {
  num = 2; // verander die plaaslike veranderlike
}

let num = 1;
func(num);
console.log(num); // sal 1 uitdruk - niks het verander nie
Задание 1

Bepaal, sonder om die kode te hardloop, wat in die konsole uitgedruk sal word:

javascriptfunction func(num) {
  num = 2;
}

let num = 1;
func(num);
console.log(num);
Задание 2

Bepaal, sonder om die kode te hardloop, wat in die konsole uitgedruk sal word:

javascriptfunction func() {
  num = 2;
}

let num = 1;
func();
console.log(num);
Задание 3

Bepaal, sonder om die kode te hardloop, wat in die konsole uitgedruk sal word:

javascriptfunction func() {
  let num = 2;
}

let num = 1;
func();
console.log(num);