Sobes.tech
Junior — Middle

JavaScript'te kapanışların (closures) rolü nedir ve ne amaçla kullanılırlar?

sobes.tech yapay zeka

AI'dan gelen yanıt

JavaScript'teki kapanışlar (closures), oluşturuldukları ortamı "hatırlayan" fonksiyonlardır; bu, dış fonksiyonun eriştiği değişkenlere, fonksiyon sona ermiş olsa bile erişim sağlar.

Kapanışların rolü:

  • Verileri kapsülleyerek özel değişkenler ve metodlar oluşturmayı sağlar.
  • Durumu koruyan fonksiyonlar oluşturmak için kullanılır.
  • Küresel alanın kirlenmesini önlemeye yardımcı olur.
  • Fonksiyonel programlamada, kısmen uygulanmış argümanlara sahip fonksiyonlar oluşturmak için kullanılır.

Örnek:

function makeCounter() {
  let count = 0; // özel değişken
  return function() {
    count += 1;
    return count;
  };
}

const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2

Burada, iç fonksiyon dış fonksiyondan count değişkenine erişimi korur ve bir kapanış oluşturur.