JavaScript Nedir?
Yazım Kuralları
Değişkenler
İşlemler
Akış Denetimi
Döngü Denetimi
Diziler
Fonksiyonlar
Pencere Komutları
Metin Komutları
Zaman Komutları
Matematik Komutları
Tarayıcı Komutları
Olay
Nesneler
Javascript ve DHTML
Örnek Uygulamalar

DİZİLER

Diziler programcılığın temel konularından biridir. Dizileri değişkenler kümesi şeklinde tanımlayabiliriz. Bellekte aynı isim altında saklanan değerleri ifade eder; değerler new Array(...) kodu kullanılarak girilir. Dizilerin iki yazım türü vardır:

1. Doğrudan Değer Atama

new Array()
ile diziyi açarak, parantez içerisine dizi elemanları yazılır.İlk eleman 0. indeks değeri alır. Burada hafta isimli bir dizi tanımlanıyor ve alacağı değerler parantez içerisine yazılıyor. hafta[0] bize "pazartesi" yi verir.


var 
dizinin_Adı = new Array(unsur1,unsur2, unsur3...unsurN)

var
hafta = new Array("pazartesi", "salı", "çarşamba", "perşembe", "cuma", "cumartesi", "pazar") 

 
NOT: dizi içerisine yazılacak değerler string değilse tırnak içine alınmaz.
 

var kusDizi = new Array("bülbül","kanarya"," muhabbet", "papagan")


Diziler sıfırdan itibaren numaralanır; yani yukarıdaki örnekte dizinin birinci üyesi, kusDizi[0], ikinci üyesi kusDizi[1], üçüncü üyesi kusDizi[2], dördüncü üyesi ise kusDizi[3] diye anılır. Burada örneğin kusDizi[2] değişkeni "muhabbet" değerini taşır. İlerde bu değeri değiştirmek ve diyelim ki "Saka" yapmak istersek, Javascript kodumuzun uygun yerinde şunu yazarız:

kusDizi[2]="saka"


NOT:
 Diziler Javascript açısından nesne sayılırlar. Dolayısıyla, nesne oldukları için özellikleri (property) vardır. Örneğin, oluşturulan dizi-değişkenin kaç üyesi olduğu, "kusDizi.length" özelliğinin içinde yazılıdır.


<script language="Javascript">
<!--

var eray=new Array("ad","soyad","yaş","şehir","ilçe")

document.writeln(eray)

-->
</script>


Yukarıda eray ismiyle bir dizi tanımlanmış ve dizi içerisine sırasıyla; ad-soyad-yaş-şehir-ilçe string değerleri yazılmış. Yazdırma işlemi sonucunda tüm bu kelimeler yanyana yazılacaktır.


<script language="Javascript">
<!--

var eray=new Array("ad","soyad","yaş","eeee","ffff")

document.writeln(eray[0])

-->
</script>


Burada tanımlanan eray dizi değişkeninin sadece ilk değeri ( 0.index) ekranda yazdırılıyor. Yani kod çalıştığında ekranda "ad" yazacaktır.
 
2. Dizi Uznunluğu Tanımlayarak Değer Atama

new Array() ile dizi açılır ancak parantez içerisine sadece dizinin uzunluğu (kaç değişkenden oluştuğu sayısı) yazılır. Hemen ardından, veya daha sonrada olabilir , değişken[0] şeklinde dizi değerleri girilir. Aşağıda hafta isimli 0-6 (yani toplam 7) elemanlı bir dizi değişkeni tanımlanıyor ve hemen ardından tek tek dizi değerleri giriliyor. Bu tarz bir tanımlanama dizi değerlerini kullanıcıdan almak istediğimiz zaman yararlı olacaktır.


var hafta = new Array(6

hafta[0] = "pazartesi" 
hafta[1] = "salı" 
hafta[2] = "çarşamba" 
hafta[3] = "perşembe" 
hafta[4] = "cuma" 
hafta[5] = "cumartesi" 
hafta[6] = "pazar" 

 
Örneğin kullanıcıdan 10 tane sayı girmesini istersek;
 


<pre>
<script language="Javascript">
<!--

var sayilar=new Array(9)

for ( i=0 ; i<=9 ; i++) {

sayilar[i] = prompt ( i+1+ " . sayıyı girin")

document.writeln ( i+1 , ". sayı= " , sayilar[i] )

}

document.writeln ( "girdiğiniz tüm sayılar : ", sayilar )

-->
</script>
</pre>

 
Burada var sayilar=new Array(9) komutuyla bellekte sayilar isimli dizi değişkeni için 10 bölümlük bir alan yaratılıyor (0-9) ve daha sonra for döngüsü ve propmt ilekullanıcıdan tek tek sayılar isteniyor. Her bir sayı girildikten sonra sayilar isimli dizi değişkeninin sayilar[i] değeri olarak kaydediliyor ve ekranda "1. sayı = x" şeklinde yazdırılıyor. 10 sayı girildikten sonra for döngüsü bitiyor ve ekranda girilen tüm sayılar yanyana yazdırılıyor.
 
Çok Boyutlu Diziler 

Diziler tek boyutlu olmyabilir. Şu ana kadar tek boyutlu dizileri gördük, oysa çok boyutlu diziler kullanmamız gerekebilir. JavaScript`te tek boyutlu bir dizinin her elemanını yeni bir dizi haline getirip, iki boyutlu dizi haline getirebiliriz: Örneğin hafta=new Array(6,1) şeklinde bir tanımlama da, hafta değişkeniiçerisine 7*2 =14 tane değer girilebilir. Burada 6 sayısı dizinin ilk boyutudur ve toplam 7 (0-6) değer alır. 1 sayısı ise dizinin ikinci veya alt boyutudur ve toplam 2 (0-1) değer alır. Başka bir deyişle birinci boyuttaki 7 değerde ayrı etten iki değer alır. [0][0] , [0][1] , [1][0] , [1][1] , [2][0] , [2]1] ..........gibi...


<pre>
<script language="JavaScript">


var hafta = new Array (6,1

for ( i=0; i<=6; i++) {

hafta[i]= new Array() 

}

hafta[0][0] = "pazartesi sabahı" 
hafta[0][1] = "pazartesi akşamı" 

hafta[1][0] = "salı sabahı" 
hafta[1][1] = "salı akşamı" 

hafta[2][0] = "çarşamba sabahı" 
hafta[2][1] = "çarşamba akşamı" 

hafta[3][0] = "perşembe sabahı" 
hafta[3][1] = "perşembe akşamı" 

hafta[4][0] = "cuma sabahı" 
hafta[4][1] = "cuma akşamı" 

hafta[5][0] = "cumartesi sabahı" 
hafta[5][1] = "cumartesi akşamı" 

hafta[6][0] = "pazar sabahı" 
hafta[6][1] = "pazar akşamı" 


document.writeln(hafta)

</script>
</pre>

 
Burada öncelikle var hafta = new Array (6,1) komutuyla 2 boyutlu bir hafta dizisi tanımlanıyor (6 ve 1 uzunluklarında). Yani ana dizi 7 (0-6)değerden alt diziise 2 (0-1)değerden oluşuyor. Daha sonra for döngüsü ile her bir hafta[i] değeri
hafta[i]
= new Array() komutuyla yeni bir dizi olarak tanımlanıyor. Dikkat edilirse burada new Array içerisinde dizi uzunluğu tekrar belirtilmiyor.Çünkü başta hafta = new Array (6,1) komutuyla alt dizinin uzunluğuda belirtilmişti.Daha sonra dizi değerleri hafta[0][0] = " " şeklinde tek tek giriliyor.Yani herbir hafta[i] değerinin hafta[i][0] ve hafta[i][1] olmak üzere iki alt değeri oluştutuluyor.Son olarak document.writeln(hafta) komutuyla tüm değerler ardarda ekranda yazdırılıyor.