JavaScript’te “charAt()” Metodu Kullanımı
Bu yazımızda, JavaScript’te dizelerle (string) birlikte kullanılan “charAt()” metodu hakkında detaylı bilgiler sunacağız.
JavaScript’te “charAt()” Metodu
Metodumuzun adı, “character at” kelimelerinin birleşiminden oluşup “belirli bir konumdaki karakter” anlamına gelmektedir. Genel olarak bir stringin belirli bir indeksteki karakterini elde etmek istediğimizde kullanırız. Söz dizimi (syntax) yandaki gibidir: string.charAt(index)
Burada “string” karakter dizisini (metinsel veri tipi) ve “index” ise bu dizide erişmek istediğimiz karakterin sıra numarasını temsil eder.
1 2 3 |
let str = "Merhaba, Dünya!"; let character = str.charAt(0); console.log(character); // "M" |
Yukarıdaki örneğimizde, charAt(0)
‘M’ karakteri dizideki 0. pozisyonda olduğu için ‘M’ karakterini döndürmüştür. Peki geçersiz bir indeks yazsaydık ne olurdu? JavaScript, geçersiz indeks girdilerini farklı şekillerde işler.
- JavaScript’te “charAt()” metodu, var olmayan bir indekse erişmeye çalışılırsa boş bir “string” döndürür. Örneğin yukarıdaki “Merhaba, Dünya!” stringinde
str.charAt(0)
yerinestr.charAt(100)
yazmış olsaydık""
(boş bir string) dönecekti.
1 2 3 |
let str = "Merhaba, Dünya!"; let character = str.charAt(100); console.log(character); // "" |
- Sayısal olmayan bir indeks değeri girilirse JavaScript bu indeksi otomatik olarak 0 olarak kabul eder ve haliyle dizinin ilk karakterini döndürür.
1 2 3 |
let str = "Merhaba, Dünya!"; let character = str.charAt("a"); console.log(character); // "M" |
- Eğer ondalıklı bir indeks girilirse JavaScript bu indeksi tam sayısınıdaki kısma yuvarlar. Yani, indeksi 4.7 verdiğimizde bunu 4. indeks olarak döndürür. Örneğin:
1 2 3 |
let str = "Merhaba, Dünya!"; let character = str.charAt(4.7); console.log(character); // "a" |
JavaScript’teki bu tür hatalar genellikle bir hata mesajı oluşturmaz, bunun yerine belirli bir varsayılan davranışı uygular. Bu tür hataların farkında olmak, bazen beklenmedik sonuçları önlemek adına önemlidir.
Belirtmek isterim ki, “charAt()” metodu yerine doğrudan “string” üzerinde bir indeksleme yapabiliriz. Özellikle modern tarayıcılarda sorunsuz bir şekilde çalışan bu pratik yöntem, eski tarayıcılarda desteklenmeyebilir. Aşağıdaki örneği inceleyiniz:
1 2 3 4 5 6 7 8 9 |
let kelime = "Merhaba"; // charAt() metoduyla erişim let karakter1 = kelime.charAt(3); console.log(karakter1); // Çıktı: h // Doğrudan indekslemeyle erişim let karakter2 = kelime[3]; console.log(karakter2); // Çıktı: h |