JavaScript "For of" ve "For in" Döngüleri

for of ve for in döngüleri JavaScript'te farklı amaçlarla kullanılırlar. Bu döngülerin kullanım amaçları ve farklılıkları, kod yazarken doğru seçimi yapmanızı sağlar.


"For of" döngüsü

Genellikle iterable (yinelenebilir) nesneleri, yani Array, String, Map, Set gibi veri yapıları üzerinde döngü kurmak için kullanılır. Örnek Kullanım:

const array = ['elma', 'armut', 'muz'];

for (const meyve of array) {
    console.log(meyve);
}

// Çıktı:
// elma
// armut
// muz


Özellikler:
- for of, iterable nesnelerin elemanlarını direkt olarak döndürür.
- Diziler, stringler, Map ve Set gibi yapılar üzerinde kullanılabilir.
- for of döngüsü, nesne özellikleri üzerinde çalışmaz.


"For in" döngüsü

Nesnelerin (object) üzerinde döngü kurarak, nesnenin kendi enumerable (enumerable) özelliklerini ve prototip zincirindekileri döndürmek için kullanılır. Örnek Kullanım:

const obj = { elma: 1, armut: 2, muz: 3 };

for (const meyve in obj) {
    console.log(`${meyve}: ${obj[meyve]}`);
}

// Çıktı:
// elma: 1
// armut: 2
// muz: 3


Özellikler:
- for in, nesnenin kendi ve prototip zincirindeki tüm enumerable özelliklerini döndürür.
- Nesne (object) ve array (dizi) üzerinde kullanılabilir, fakat arrayler üzerinde kullanımı önerilmez çünkü array indekslerini string olarak döndürür.
- for in döngüsü, iterable nesneler üzerinde çalışmaz.


Her iki döngü de farklı amaçlara hizmet eder ve doğru kullanıldıklarında kodunuzu daha okunabilir ve etkili hale getirir.

JavaScript'te Split Metodu

JavaScript'te split metodu, bir stringi belirli bir ayırıcıya göre bölerek bir dizi (array) oluşturmanızı sağlar. Bu yöntem, özellikle bir metni belirli bir karaktere veya karakter dizisine göre parçalara ayırmak istediğinizde oldukça kullanışlıdır. Kullanım:

string.split(ayırıcı, limit)


- ayırıcı: Stringin nereden bölüneceğini belirleyen bir karakter veya karakter dizisi. Bu parametre isteğe bağlıdır. Eğer boş bir string ('') olarak verilirse, her karakter arasında bölme işlemi yapılır.
- limit (sınır): Döndürülecek dizinin eleman sayısını belirleyen isteğe bağlı bir tam sayı. Eğer belirtilmezse, tüm string bölünür.


Örnek:

JavaScript Hata Türleri

Syntax Errors

Sözdizimi hataları, kodun yazım kurallarına uygun olmaması durumunda ortaya çıkar. Tarayıcı veya JavaScript çalışma ortamı bu hataları kod çalışmadan önce tespit eder.

var x = 10
if (x == 10) { // Eksik parantez
    console.log("Hello");
// }

Yukarıdaki örnekte "if" yapısının kapanma parantezi yorum satırına alındığı için bir yazım hatası (Syntax Error) oluşmuştur.


TypeError

Bir değişkenin veya değerin beklenen türde olmaması durumunda meydana gelir. Örnek:

let obj = null;
console.log(obj.property); //null üzerinde toUpperCase() çağrılamaz
<...