JavaScript/Nesneler
JavaScript'in nesne yönelimli programlama desteği vardır.
Var olan nesneleri kullanma
değiştirdocument.write("deneme");
var dizi=[1,2,3];
document.write(dizi.length);
Birincisinde document nesnesinin statik write() metoduyla ekrana deneme
yazdık. İkincisinde ise Array nesnesinin statik olmayan length özelliğiyle ilgili dizinin eleman sayısını aldık. Bir metot veya özellik herhangi bir nesne türünden değer döndürebilir. Metotlar, bir nesneyle ilişkilendirilmiş fonksiyonlardan başka bir şey değildir. Özellikler ise yine bir nesneyle ilişkilendirilmiş değişkenlerdir.
JavaScript'te tanımladığımız her dizi aslında Array türünden bir nesnedir.
Yeni nesne tanımlama
değiştirJavaScript'te yeni nesne tanımı farklı şekillerde yapılabilir:
insan=new Object(); //yeni nesne oluşturuyoruz.
insan.isim="ahmet"; //nesnemizin isim özelliğine ahmet değerini veriyoruz.
insan.soyad="yılmaz"; //nesnemizin soyad özelliğine yılmaz değerini veriyoruz.
insan.gozRengi="mavi"; //nesnemizin gozRengi özelliğine mavi değerini veriyoruz.
insan.yas=56; //nesnemizin yas özelliğine 56 değerini veriyoruz.
insan.konus=konus; //nesnemize konus metodunu bağlıyoruz.
function konus() //konus metodunu yazıyoruz.
{
document.write("benim adım "+this.isim);
}
veya
insan={isim:"ahmet",soyad:"yılmaz",gozRengi:"mavi",yas:56}; /*nesnemizin tüm özelliklerini
ve bu özelliklerin değerlerini
tek satırda belirtiyoruz.*/
insan.konus=konus; //nesnemize konus metodunu bağlıyoruz.
function konus() //konus metodunu yazıyoruz.
{
document.write("benim adım "+this.isim);
}
Yukarıdaki yöntemlerden herhangi biriyle oluşturduğumuz nesneyi aşağıdaki gibi kullanabiliriz:
insan.isim="esra"; //nesnemizin isim özelliğinin değerini değiştiriyoruz.
insan.konus(); //nesnemizin konus() metodunu çağırıyoruz.
Yeni nesne kalıbı tanımlama
değiştirfunction insan(isim,soyad,yas,gozRengi)
{
this.isim=isim;
this.soyad=soyad;
this.yas=yas;
this.gozRengi=gozRengi;
this.konus=konus;
}
function konus()
{
document.write("benim adım "+this.isim);
}
Şimdi bu nesne kalıbını kullanarak yeni nesne oluşturalım:
var ayse=new insan();
ayse.isim="ayşe";
ayse.soyad="yılmaz";
ayse.yas=15;
ayse.gozRengi="mavi";
ayse.konus();
Yapıcı metot kullanarak da nesnemizi oluşturabiliriz:
var hakan=new insan("hakan","yılmaz",34,"ela");
hakan.konus();