Junior — Middle
Bir kapanış fonksiyonu içinde değişkenlerin yakalanmasının ne anlama geldiğini açıklayın
sobes.tech yapay zeka
AI'dan gelen yanıt
Bir kapanış fonksiyonu içinde değişkenlerin yakalanması, kapanışın "hatırlaması" ve oluşturulduğu çevresel bağlamdaki değişkenleri kullanabilmesi anlamına gelir.
Örneğin, bir fonksiyon içinde bir değişken tanımlanırsa ve sonra bu değişkeni kullanan bir fonksiyon döndürülürse, bu değişken "yakalanır" ve dış fonksiyondan çıktıktan sonra bile değerini korur.
Swift'te örnek:
func makeIncrementer(amount: Int) -> () -> Int {
var total = 0
return {
total += amount
return total
}
}
let incrementByTen = makeIncrementer(amount: 10)
print(incrementByTen()) // 10
print(incrementByTen()) // 20
Burada, kapanış total ve amount değişkenlerini yakalar ve çağrılar arasında durumlarını korur. Bu, iç durumlu fonksiyonlar oluşturmayı sağlar.