JavaScript’te stringler, yani metin ifadeleri, programlamada oldukça sık kullanılan veri tiplerinden biridir. Stringler tırnak işaretleri içinde yazılır ve karakterlerden oluşur. Örneğin:
let mesaj = "Merhaba Dünya!";
Bu yazıda, stringlerin nasıl indekslendiğini, bireysel karakterlere nasıl erişildiğini ve string işlemlerini açıklayacağız.
Stringlerde İndeksleme Nedir?
Bir string, içindeki her karakterin bir sıra numarasına (indeks) sahip olduğu sıralı bir karakter dizisidir. JavaScript’te indeksleme 0’dan başlar. Yani, bir stringin ilk karakterinin indeksi 0, ikinci karakterinin indeksi 1 ve bu şekilde devam eder.
Örneğin:
let kelime = "Programlama";
Bu string içindeki harflerin indeksleri şu şekildedir:
Karakter | P | r | o | g | r | a | m | l | a | m | a |
İndeks | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
Bir stringin bireysel karakterlerine köşeli parantez []
kullanarak erişebiliriz:
console.log(kelime[0]); // "P"
console.log(kelime[3]); // "g"
console.log(kelime[10]); // "a"
Eğer bir stringin olmayan bir indeksine erişmeye çalışırsak, JavaScript “undefined” döndürür:
console.log(kelime[20]); // undefined
Boşluklar ve Özel Karakterler de İndekslenir
String içindeki boşluklar, noktalama işaretleri ve özel karakterler de indekslenir.
Örneğin:
let ifade = "Kodlama 101!";
Karakter | K | o | d | l | a | m | a | | 1 | 0 | 1 | ! |
İndeks | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
Boşluk karakterinin de bir indeksi vardır (7
numaralı indeks):
console.log(ifade[7]); // " "
console.log(ifade[8]); // "1"
console.log(ifade[11]); // "!"
String Uzunluğu (length)
Bir stringin toplam karakter sayısını öğrenmek için .length
özelliğini kullanabiliriz:
let mesaj = "JavaScript";
console.log(mesaj.length); // 10
Önemli Not: length
, stringdeki karakter sayısını verir, en büyük indeks ise her zaman (length - 1) olur.
Örneğin:
let kelime = "Öğrenme";
console.log(kelime.length); // 7
console.log(kelime[6]); // "e"
String Birleştirme (Concatenation)
JavaScript’te stringler “+” operatörü kullanılarak birleştirilebilir.
let isim = "Ahmet";
let soyisim = "Yıldız";
let tamIsim = isim + " " + soyisim;
console.log(tamIsim); // "Ahmet Yıldız"
Burada “Ahmet” ve “Yıldız” stringleri arasına bir boşluk eklemek için " "
(boşluk içeren string) kullandık.
Stringlerde Değişiklik Yapma
Stringler değiştirilemez (immutable) veri türleridir. Yani, bir string içindeki bireysel karakteri değiştiremeyiz. Ancak, tamamen yeni bir string atayabiliriz.
Yanlış kullanım:
let isim = "Can";
isim[0] = "T"; // Hata! Stringler değiştirilemez
console.log(isim); // "Can" (değişmez)
Doğru kullanım:
isim = "Tan"; // Yeni bir string atadık
console.log(isim); // "Tan"
Sayılarla Stringler Arasındaki Farklar
JavaScript’te sayılara ekleme işlemi yapıldığında toplama yapılır, ancak bir sayı bir string ile birleştirilirse, sayı da stringe dönüştürülerek concatenation (birleştirme) işlemi yapılır.
console.log(5 + 10); // 15 (Matematiksel toplama)
console.log(5 + "10"); // "510" (String birleştirme)
Bunu anlamak için typeof
operatörünü kullanabiliriz:
console.log(typeof (5 + 10)); // "number"
console.log(typeof (5 + "10")); // "string"
JavaScript, farklı veri türlerini otomatik olarak dönüştürerek işlemi tamamlamaya çalışır. Ancak, bu bazen beklenmeyen sonuçlara neden olabilir.
Sonuç
Bu yazıda stringlerin indekslenmesi, uzunluk hesaplama, bireysel karakterlere erişim, string birleştirme ve sayı-string farkı gibi temel kavramları öğrendik. Özetlemek gerekirse:
- Stringler indekslenir ve sıfırdan başlar.
- Boşluklar ve özel karakterler de birer karakterdir ve indeksleri vardır.
.length
ile stringin uzunluğu öğrenilebilir.
+
operatörüyle stringler birleştirilebilir.
- Stringler değiştirilemez, ancak yeni değer atanabilir.
- Sayılarla stringler birleştiğinde, JavaScript string türüne dönüştürerek işlem yapar.
Bu bilgiler, JavaScript programlamada metin işlemleri yaparken size büyük kolaylık sağlayacaktır. Bir sonraki adımda, stringlerle ilgili daha gelişmiş işlemler öğreneceğiz!