Array - Dizi
Bir array
nesnesi tanımlamak için köşeli parantezler ( []
) kullanılır ve her bir değerin (value) arasına virgül ( ,
) konur. Örnek.
let gunler = ['Pazartesi','Salı','Çarşamba','Perşembe','Cuma','Cumartesi','Pazar'];
alert ( typeof(gunler) ); //object çıktısı verir ve dizi nesnesidir.
alert(gunler);
Array
'lerin içerisindeki değerler farklı veri tiplerinde olabilir. Doğrudan bir değer yerine bir değişkeni de tutabilirler. Örnek.
let str = 'Karakter Dizisi';
let veriTipleri = [str, 2023, true, ['Başka', 1, 'array']];
alert(veriTipleri);
Array
'in uzunluğu dizi nesnesinin .length
anahtarı ile dizi uzunluğu ile elde edilir.
let gunler = ['Pazartesi','Salı','Çarşamba','Perşembe','Cuma','Cumartesi','Pazar'];
alert ( gunler.length ); // 7 çıktısı verir.
Array
'deki değerler tamsayı artan sıralıdır. İlk sıra 0. indisten başlar. Array
'lerin değerlerine sırayla şu şekilde erişilir.
let gunler = [
'Pazartesi', //0.indis
'Salı', //1.indis
'Çarşamba', //2.indis
'Perşembe', //3.indis
'Cuma', //4.indis
'Cumartesi', //5.indis
'Pazar' //6.indis
];
alert( gunler[0] ); // indisi değiştirerek kontrol ediniz.
.at()
metodu ile de değerlere erişilebilir.
let ulkeler = [
['Türkiye', 'Ankara',1923], // 0.indis
['KKTC', 'Lefkoşa',1983 ], // 1.indis
['Azerbaycan', 'Bakü',1991] // 2.indis
];
alert( ulkeler.at(0) ); // indisi değiştirerek kontrol ediniz.
Array
'de indisi ile eriştiğimiz bir değeri değiştirebiliriz. Örnek.
let dizi = ['Pazartesi', 'Salı', 'Çarşamba'];
dizi[0] = 'Ocak'; //0.indisteki elemanı 'Ocak' ile değiştirdik.
dizi[1] = 'Şubat'; //1.indisteki elemanı 'Şubat' ile değiştirdik.
dizi[2] = 'Mart'; //2.indisteki elemanı 'Mart' ile değiştirdik.
alert(dizi);
Array
nesnesinin boyutu dinamiktir bu sayede istediğimiz indise değer ekleyebiliriz. Örnek.
let dizi = ['Pazartesi', 'Salı', 'Çarşamba'];
dizi[4] = 'Cuma'; //4.indise 'Cuma' değerini ekledik.
dizi[5] = 'Cumartesi'; //5.indise 'Cumartesi' değerini ekledik.
alert(dizi);
Yukarıdaki örnekte 3.indisi atladık. Peki 3.indiste ne oluştu?
let dizi = ['Pazartesi', 'Salı', 'Çarşamba'];
dizi[4] = 'Cuma'; //4.indise 'Cuma' değerini ekledik.
dizi[5] = 'Cumartesi'; //5.indise 'Cumartesi' değerini ekledik.
alert( dizi[3] ); // undefined çıktısı verir.
alert(dizi); //Pazartesi,Salı,Çarşamba,,Cuma,Cumartesi
//3.indis mevcuttur, yeri ayrılmıştır.
Bu yöntemle değer eklemek için ekleyeceğimiz indisi bilmek gerekir. Aksi takdirde var olan bir değeri değiştirip üzerine yazabilir ve veriyi kaybedebiliriz. Bu sebeple zahmetlidir.
Değerlere sırayla erişmeyi string
tipinde de kullanmıştık. Fakat string
tipinde indis ile eriştiğiniz değeri değiştiremez veya silemezsiniz. (İlkel tiplerin hafıza birimlerinin boyutu belirlidir.)
Negatif bir indis verirseniz herhangi bir hata vermez fakat diziye de eklenmez.
let dizi = ['Pazartesi', 'Salı', 'Çarşamba'];
dizi[-1] = 'Perşertesi'; //-1.indes yok, ekleyemez, hata vermez.
alert(dizi);
Array
'lerden değer silmenin yöntemi delete
komutu değildir. Bu yöntemle değer silinemez sadece değeri undefined
olarak atanır. Örnek.
let gunler = ['Pazartesi', 'Salı', 'Çarşamba'];
delete gunler[1];
alert(gunler); // 'Pazartesi,,Çarşamba' çift virgülü farkediniz.
Dizi Kontrolü
Array.isArray()
Tüm object
türlerinin tipinin object
olduğunu ifade etmiştik. Object
tipinde farklı türler bir arada olduğu için object
bir değerin array
dizisi olduğunu kontrol etmek için Array.isArray()
fonksiyonu kullanılır. Örnek.
let harfler = ['A','B','C','D'];
let str = 'ABCD';
alert( Array.isArray(harfler) ); // true
alert( Array.isArray(str) ); // false
Dizi Türüne Dönüştürme
Array.from()
|Array()
String
bir değer veya değişken array
türüne Array.from()
fonksiyonu ile dönüştürülebilir. Örnek.
let dizi = Array.from('JAVASCRIPT');
alert(dizi); // J,A,V,A,S,C,R,I,P,T
alert( Array.isArray(dizi) );
Değerin tipinin string
olması bir gerekliliktir. Örnek.
let sayi = 123, // nummber tipi array'a dönüşemez.
dizi = Array.from(sayi);
alert(dizi); // boş çıktı alınır, elemanları yoktur.
alert( Array.isArray(dizi) ); // true verir fakat elemanları yoktur.
Bununla birlikte bir string
'i dilimlemeden tek bir eleman olarak array
yapmak isterseniz Array()
fonksiyonunu kullanabilirsiniz. Örnek.
let dizi = Array('JAVASCRIPT');
alert(dizi); // Tek eleman 'JAVASACRIPT'
alert( Array.isArray(dizi) );
Last updated