this
, birçok nesne yönelimli programlama dilinde (örneğin JavaScript, Java, C++, Python) kullanılan ve o anki nesne örneğine referans veren bir anahtar kelimedir. Temel amacı, bir nesnenin kendi özelliklerine ve metotlarına erişmesini sağlamaktır.
Ne Anlama Gelir?
this
'in değeri, bağlama (context) bağlı olarak değişir. Bağlam, this
anahtar kelimesinin kullanıldığı yer ve nasıl çağrıldığı ile belirlenir.Kullanım Alanları ve Önemi:
Nesne Özelliklerine Erişim: Bir nesnenin metotları içinde, nesnenin kendi özelliklerine (variables, functions vs.) erişmek için kullanılır. Bu, nesnenin durumunu değiştirmesine ve yönetmesine olanak tanır.
Metot Zincirleme: Nesnelerde, bir metot çağrısının sonucunda yine aynı nesnenin döndürülmesini sağlayarak metotların zincirleme şeklinde kullanılmasını mümkün kılar.
Olay Yönetimi: Olay dinleyicilerde, olayın gerçekleştiği öğeye (element) erişmek için kullanılır.
Yapıcı Fonksiyonlar (Constructor Functions): Yeni bir nesne oluştururken, this
yeni oluşturulan nesneye referans verir ve bu nesneye özellikler ve metotlar eklemek için kullanılır.
Örnekler (JavaScript):
// Basit bir nesne
const araba = {
marka: "BMW",
model: "320i",
bilgiGoster: function() {
console.log("Marka: " + this.marka + ", Model: " + this.model);
}
};
araba.bilgiGoster(); // Çıktı: Marka: BMW, Model: 320i
Bu örnekte, this
, araba
nesnesine referans verir ve nesnenin marka
ve model
özelliklerine erişilmesini sağlar.
Bağlamın Önemi:
this
'in değeri, nasıl çağrıldığına göre değişebilir. Örneğin, bir fonksiyon doğrudan çağrıldığında this
global nesneye (window) referans verebilirken, bir nesne metodu olarak çağrıldığında nesnenin kendisine referans verir. Bu durum, özellikle JavaScript gibi dillerde dikkat edilmesi gereken bir konudur. Bağlam (Context) kavramı bu konuda önemlidir.
Özet:
this
, nesne yönelimli programlamanın temel bir kavramıdır ve bir nesnenin kendi özelliklerine ve metotlarına erişmesini, durumunu yönetmesini ve etkileşimde bulunmasını sağlar. Ancak, this
'in değerinin bağlama (context) bağlı olarak değiştiği unutulmamalıdır.
Ne Demek sitesindeki bilgiler kullanıcılar vasıtasıyla veya otomatik oluşturulmuştur. Buradaki bilgilerin doğru olduğu garanti edilmez. Düzeltilmesi gereken bilgi olduğunu düşünüyorsanız bizimle iletişime geçiniz. Her türlü görüş, destek ve önerileriniz için iletisim@nedemek.page