Sobes.tech
Junior

Kada naudoti kintamuosius var, let ir const?

sobes.tech AI

Atsakymas iš AI

  • var: Jei jums reikia funkcijos apimties kintamojo arba jei norite pakelti deklaraciją (hoisting) su inicializacija undefined. Pasenusi metodika, nerekomenduojama naujam kodui.
  • let: Jei jums reikia blokinio apimties kintamojo, kurį galima perrašyti (keisti jo reikšmę). Tinka daugumai atvejų, kai kintamojo reikšmė gali keistis.
  • const: Jei jums reikia blokinio apimties kintamojo, kurio reikšmė negali būti perrašyta po inicializacijos. Naudojama reikšmėms, kurios neturėtų keistis vykdant kodą (konstantes, nuorodos į DOM elementus, funkcijos).
// `let` naudojimo pavyzdys
let count = 0;
if (true) {
  let count = 1; // Naujas kintamasis blokinio apimties
  console.log(count); // 1
}
console.log(count); // 0

// `const` naudojimo pavyzdys
const PI = 3.14159;
// PI = 3; // Klaida: Priskyrimas konstantei.

const user = { name: 'Alex' };
user.name = 'John'; // Leidžiama, keičiasi objekto savybė, ne nuoroda
console.log(user); // { name: 'John' }

// `var` naudojimo pavyzdys (nerekomenduojama)
var x = 10;
if (true) {
  var x = 20; // Perrašoma ta pati kintamoji funkcijos apimtyje
  console.log(x); // 20
}
console.log(x); // 20