Tüm blog yazıları

JavaScript’te Diziler (Arrays) ile Çalışmak

Programlamaya yeni başlayan biri için, verileri düzenli ve etkili bir şekilde saklamak oldukça önemlidir. JavaScript’te bunun en temel yollarından biri, diziler (arrays) kullanmaktır. Bu yazıda dizilerin ne olduğunu, nasıl oluşturulup kullanıldığını, dizilerd

eminbasbayan4 dk okuma
JavaScript’te Diziler (Arrays) ile Çalışmak

Programlamaya yeni başlayan biri için, verileri düzenli ve etkili bir şekilde saklamak oldukça önemlidir. JavaScript’te bunun en temel yollarından biri, diziler (arrays) kullanmaktır. Bu yazıda dizilerin ne olduğunu, nasıl oluşturulup kullanıldığını, dizilerdeki verilere nasıl erişilip değiştirildiğini adım adım öğreneceğiz.

1. Dizi Nedir ve Neden Kullanılır?

Dizi, birden fazla değeri tek bir değişken altında saklamamıza olanak tanıyan bir veri yapısıdır. Mesela, bir sınıftaki öğrencilerin adlarını saklamak istiyorsak, her bir isim için ayrı bir değişken oluşturmak yerine, tüm isimleri tek bir dizide toplayabiliriz:

metin
let ogrenciler = ["Deniz", "Emir", "Hazal", "Yusuf"];

Bu sayede veriler hem daha düzenli olur hem de aynı yapıya sahip birçok veriyi kolayca yönetebiliriz.

2. Dizi Elemanlarının Sırası ve İndeksler

Her dizi elemanının bir sırası vardır ve bu sıra indeks olarak adlandırılır. JavaScript’te indeksler sıfırdan başlar. Yani ilk elemanın indeksi 0’dır, ikinci 1’dir ve böyle devam eder:

metin
let kitaplar = ["Simyacı", "1984", "Kürk Mantolu Madonna"];
// "Simyacı" → indeks 0
// "1984" → indeks 1
// "Kürk Mantolu Madonna" → indeks 2

Bu bilgilerle, dizinin belirli bir elemanına kolayca ulaşabiliriz:

metin
console.log(kitaplar[1]); // "1984" yazdırır

Eğer olmayan bir indeksi çağırırsak, örneğin kitaplar[5], JavaScript bize "undefined" değeri döndürür çünkü orada bir veri yoktur.

3. Dizi Elemanını Değiştirmek

Dizideki herhangi bir elemanı sonradan değiştirebiliriz. Örneğin yanlış yazılmış bir kelimeyi düzeltmek oldukça kolaydır:

metin
let dersler = ["Matematk", "Fizik", "Kimya"];
dersler[0] = "Matematik"; // Hatalı yazımı düzelttik

Şimdi dizimiz şöyle görünür: ["Matematik", "Fizik", "Kimya"]

Bu işlem sadece dizilere özgüdür. Çünkü diziler değiştirilebilir (mutable) yapılardır. Ancak string (metin) türleri için aynı şey geçerli değildir. Bir string’in sadece bir harfini değiştirerek onun üzerinde oynama yapamayız:

metin
let isim = "ayşe";
isim[0] = "A";
console.log(isim); // Hâlâ "ayşe"

4. Diziye Yeni Eleman Eklemek

Bir diziye yeni bir eleman eklemek için, dizinin en sonundaki boş sıraya bir değer atayabiliriz. Bu sırayı bulmak için dizinin uzunluğunu (length) kullanabiliriz:

metin
let sehirler = ["Ankara", "İzmir"];
sehirler[sehirler.length] = "Bursa";

Bu kodda sehirler.length ifadesi bize dizinin uzunluğunu verir. Diziye yeni bir şehir eklemek istediğimizde bu sayıyı indeks olarak kullanarak eklemeyi yaparız. Böylece "Bursa" dizinin sonuna eklenir.

5. Yüksek İndekslere Değer Atamak

Bazı durumlarda, dizinin mevcut uzunluğundan çok daha yüksek bir indekse değer atanabilir. Örneğin:

metin
let renkler = ["siyah", "beyaz"];
renkler[5] = "mavi";

Bu kod çalışır, hata vermez. Ancak 2. ile 4. indeksler arasında boşluk oluşur ve bu boşluklar "undefined" olur:

metin
console.log(renkler);
// ["siyah", "beyaz", undefined, undefined, undefined, "mavi"]

Bu durum dizinin uzunluğunu artırır ama aradaki indekslerde bir veri yoktur.

6. Farklı Türde Veriler Bir Arada Olabilir mi?

JavaScript dizileri çok esnektir. İçine farklı türlerde veriler koyabilirsiniz:

metin
let karisik = ["elma", 42, false, null, [1, 2]];

Bu dizide bir string, bir sayı, bir boolean, bir null ve bir başka dizi birlikte tutuluyor. Bu esneklik güzeldir ama dizinin ne içerdiğini karıştırmak kolaydır. Bu yüzden pratikte genellikle aynı türde veriler birlikte tutulur.

7. Dizi Uzunluğu (length)

Bir dizinin kaç eleman içerdiğini öğrenmek için .length özelliğini kullanırız:

metin
let sinif = ["Ali", "Buse", "Eren"];
console.log(sinif.length); // 3

Bu özellik, özellikle döngülerde çok işe yarar çünkü dizinin kaç eleman içerdiğini bilmek gerekir.

8. Zincirleme Erişim (Chaining)

Bir dizi elemanına ulaştıktan sonra, onun üzerinde başka bir işlem de yapabiliriz. Örneğin o eleman bir string ise, onun bir harfine ulaşabiliriz:

metin
let hayvanlar = ["Kedi", "Köpek", "Kuş"];
console.log(hayvanlar[1][0]); // "K"

Burada önce hayvanlar[1] ifadesi "Köpek" string’ini döndürür, ardından [0] ile bu string’in ilk harfine ulaştık.

Sonuç:

JavaScript’te diziler, birden fazla veriyi düzenli bir şekilde saklamak ve onlarla işlem yapmak için kullanılır. Bu yapıyı öğrenmek, programlamaya başlayan herkesin temel taşlarından biridir. Özetle:

  • Diziler sıralıdır ve indekslerle yönetilir.
  • Verilere erişmek, değiştirmek ve yeni veri eklemek mümkündür.
  • undefined ifadesi, olmayan bir veriye erişilmeye çalışıldığında karşımıza çıkar.
  • Diziler farklı türde verilerle çalışabilir ama genellikle karışıklığı önlemek için aynı türde verilerle kullanılır.

Bir sonraki adımda dizilere eleman ekleme ve silme işlemleri için kullanılan .push(), .pop(), .shift(), .unshift() gibi yöntemleri öğrenerek daha da ileriye gidebilirsin.

JavaScript Classes ile pratik uygulamalar, metotlar arası iletişim ve gerçek dünya kod örnekleri
JavaScript Dersleri9 dk okuma

JavaScript Classes - Pratik Uygulamalar

JavaScript class'ları ile pratik uygulamalara geçin! Metotlar arası iletişimden constructor'da metot çağırmaya, kod tekrarını azaltmaktan gerçek dünya senaryolarına kadar class kullanımının inceliklerini keşfedin. Kendi alışveriş sepeti örneğinizle bilginizi pekiştirin.

Yazıyı oku
JavaScript class yapısını gösteren bir kod örneği, ES6 ile modern nesne oluşturma
JavaScript Dersleri9 dk okuma

JavaScript Classes

ES6 ile JavaScript'e gelen class yapısı sayesinde nesne oluşturmak artık çok daha kolay ve düzenli! Constructor function karmaşasından kurtulup, okunabilir ve yönetilebilir kodlar yazmak isteyenler için modern JavaScript'in temel taşı olan class'ları tüm detaylarıyla keşfedin. Bu rehberle nesne şabl

Yazıyı oku
JavaScript kodunda Constructor Function ve new keyword'ü ile nesne oluşturma örnekleri
JavaScript Dersleri8 dk okuma

Constructor Functions ve new Keyword

Factory Function'ların hafıza israfı sorununa Constructor Function'lar ve new keyword'ü ile son verin! Metotları paylaştırarak JavaScript objelerini daha verimli nasıl oluşturacağınızı, new'in perde arkasında neler yaptığını ve prototype sisteminin gücünü bu rehberde keşfedin.

Yazıyı oku

Çerez tercihlerin

Platformun çalışması için zorunlu çerezler kullanıyoruz. İzin verirsen anonim kullanım verilerini ölçüyoruz. Ayrıntıları incele