JavaScript'te Proxy Objeleri
Proxy, bir nesneye erişimi, üzerinde farklı işlemler yaparak kontrol etmeyi sağlayan bir yapıdır. Proxy kullanarak, nesneye yapılan işlemleri (okuma, yazma, oluşturma, silme gibi) izleyebilir veya değiştirebilirsiniz.
Proxy Oluşturma
Proxy oluşturmak için iki ana bileşen gereklidir:
- Hedef nesne: Proxy üzerinde işlem yapılacak olan nesne.
- Yakalama (handler) objesi: Hedef nesne üzerindeki işlemleri kontrol eden fonksiyonlar.
Örnek:
```javascript
let hedef = {};
let yakalama = {
get: function (obj, prop) {
return prop in obj ? obj[prop] : 'Bu özellik mevcut değil';
}
};
let proxy = new Proxy(hedef, yakalama);
```
Yakalama Yöntemleri
Proxy ile kullanabileceğiniz bazı yaygın yakalama yöntemleri şunlardır:
- get: Bir özellik okunduğunda çağrılır.
- set: Bir özellik ayarlandığında çağrılır.
- deleteProperty: Bir özellik silindiğinde çağrılır.
- has: 'in' operatörü kullanıldığında çağrılır.
- apply: Fonksiyonlar için çağrıldığında kullanılır.
Örnek Kullanım
Bir nesneye yazma ve okuma işlemleri için Proxy kullanımı:
```javascript
let hedef = { isim: "Ahmet" };
let yakalama = {
get: function (obj, prop) {
return prop in obj ? obj[prop] : 'Bu özellik mevcut değil';
},
set: function (obj, prop, value) {
obj[prop] = value;
return true;
}
};
let proxy = new Proxy(hedef, yakalama);
console.log(proxy.isim); // "Ahmet"
proxy.isim = "Mehmet";
console.log(proxy.isim); // "Mehmet"
```
Sonuç
Proxy, JavaScript'te nesneler üzerindeki davranışları yönetmek için güçlü bir araçtır. Özellikle, veri doğrulama, gözlemleme veya özellik erişimi üzerine kontrol sağlamak amacıyla kullanılabilir.