Middle
JavaScript'te kapanış nasıl çalışır? Çözümünüzdeki index değişkeni ve run fonksiyonunun örneğiyle açıklayın.
sobes.tech yapay zeka
AI'dan gelen yanıt
JavaScript'te kapanış (closure), kendi sözdizimsel ortamını hatırlayan ve çağrıldığında kendi kapsam alanı dışında olsa bile erişebilen bir fonksiyondur.
index değişkeni ve run fonksiyonuyla bir örnek görelim:
function createRunner() {
let index = 0;
function run() {
console.log(index);
index++;
}
return run;
}
const runner = createRunner();
runner(); // 0
runner(); // 1
runner(); // 2
Burada, run fonksiyonu, dış fonksiyon olan createRunner içindeki index değişkenini kapatır. createRunner fonksiyonu tamamlandıktan sonra bile, run fonksiyonu index'e erişmeye devam eder ve onun değerini değiştirebilir. Bu, run fonksiyonunun çağrıları arasında durumu korumasını sağlar.
Bu şekilde, kapanışlar, özel değişkenlere sahip fonksiyonlar oluşturmayı ve durumu küresel değişkenler kullanmadan korumayı mümkün kılar.