Sobes.tech
Junior — Middle

JavaScript'te bellek yönetimi ve nesnelerin otomatik temizlenmesi nasıl gerçekleştirilir, açıklayabilir misiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

JavaScript'te bellek yönetimi otomatik olarak çöp toplama (garbage collection) mekanizmasıyla gerçekleşir. Nesneler oluşturulduğunda, yığında (heap) bellek kullanırlar. Çöp toplayıcı, periyodik olarak artık kullanılmayan nesneleri kontrol eder — yani, aktif koddan referansları kalmamış nesneleri — ve kullandıkları belleği serbest bırakır.

Ana algoritma referans sayımı ve erişilebilir nesnelerin aranmasıdır (mark-and-sweep). Örneğin, bir değişken bir nesneye referans veriyorsa, o nesne canlı sayılır. Referanslar kaybolursa, nesne silinmek üzere aday olur.

Örnek:

let obj = { name: "test" };
obj = null; // artık nesne erişilebilir değil ve çöp toplayıcı tarafından temizlenecek

Bu şekilde, programcı belleği manuel olarak serbest bırakmak zorunda kalmaz, bu da bellek sızıntılarıyla ilgili hataların olasılığını azaltır.