Sobes.tech
Junior — Middle

Kaip galima naudoti uždarymus duomenų inkapsuliacijai JavaScript'e?

sobes.tech AI

Atsakymas iš AI

JavaScript'e užraktai leidžia kurti privačias kintamąsias, prie kurių prieiga yra įmanoma tik per tam tikras funkcijas, užtikrinant duomenų kapsulizaciją.

Pavyzdys:

function createCounter() {
  let count = 0; // privačios kintamasis

  return {
    increment() {
      count++;
      return count;
    },
    getCount() {
      return count;
    }
  };
}

const counter = createCounter();
console.log(counter.increment()); // 1
console.log(counter.getCount());  // 1
console.log(counter.count);       // neapibrėžta — tiesioginė prieiga neįmanoma

Čia count nėra tiesiogiai pasiekiamas iš išorinio kodo, tačiau prieinamas per increment ir getCount metodus. Tai leidžia kontroliuoti prieigą ir duomenų keitimą, įgyvendinant duomenų kapsulizaciją naudojant užraktus.