Şimdi yükleniyor

JavaScript Objects Constructors

JavaScript’te nesneler, veriyi organize etmek ve bir arada tutmak için kullanılır. Basit nesneler oluşturmak için süslü parantezler {} kullanılabileceği gibi, daha dinamik yapılar için constructor (yapıcı) fonksiyonlar tercih edilebilir. Constructor fonksiyonlar, aynı yapıda birden fazla nesne oluşturmayı kolaylaştırır.

JavaScript’te Constructor Nedir?

Constructor, belirli bir yapı ve özelliklere sahip nesneler oluşturmak için kullanılan özel bir fonksiyondur. Constructor fonksiyonlar, genellikle büyük harfle başlar ve new anahtar kelimesiyle çağrıldığında yeni bir nesne döner. Örneğin, bir Araba nesnesi oluşturmak için bir constructor tanımlayabilirsiniz.

function Araba(marka, model, yil) {
this.marka = marka;
this.model = model;
this.yil = yil;
}

Bu örnekte, Araba adlı bir constructor fonksiyon tanımlanmıştır. marka, model ve yil olmak üzere üç parametre alır ve bunları yeni oluşturulan nesnenin özellikleri olarak ayarlar.

Constructor Fonksiyon Kullanımı

new anahtar kelimesi kullanılarak, Araba constructor fonksiyonuyla bir nesne oluşturulabilir:

const araba1 = new Araba("Toyota", "Corolla", 2020);
console.log(araba1.marka); // Çıktı: Toyota

Bu kodda, araba1 adında bir nesne yaratılmış ve marka özelliği “Toyota” olarak atanmıştır.

Constructor Prototipi

Constructor fonksiyonlar, prototip (prototype) özelliği ile yeni metodlar eklemeyi sağlar. Bu, tüm nesneler için aynı işlevselliği tanımlamayı kolaylaştırır.

Araba.prototype.yasHesapla = function() {
const suankiYil = new Date().getFullYear();
return suankiYil - this.yil;
};

console.log(araba1.yasHesapla()); // Örneğin, 4 (2024 - 2020)

Yukarıdaki örnekte, yasHesapla metodu, Araba constructor’ından üretilen tüm nesnelere eklenmiştir. Bu sayede, her nesne kendi yaşını hesaplayabilir.

Built-In Constructors (Hazır Constructor’lar)

JavaScript, hazır constructor fonksiyonlar da sunar. Bunlardan bazıları şunlardır:

  • Object(): Yeni bir nesne oluşturur.
  • Array(): Yeni bir dizi oluşturur.
  • Date(): Tarih ve saat nesnesi oluşturur.
  • String(): Metin verilerini temsil eden bir nesne oluşturur.

Ancak, Object() veya Array() gibi hazır constructor’ları kullanmak yerine daha kısa ve doğrudan olan {} ve [] notasyonlarını tercih etmek genellikle daha yaygındır.

Constructor fonksiyonlar, JavaScript’te nesne odaklı programlamayı daha güçlü hale getirir ve aynı yapıya sahip birden fazla nesne yaratmayı kolaylaştırır.

Share this content:

Yorum gönder