Sobes.tech
Junior

Bir nesnenin dizi olup olmadığını nasıl kontrol ederiz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Birkaç yöntem vardır:

  1. Array.isArray() kullanmak. Bu en güvenilir ve önerilen yoldur.

    const arr = [1, 2, 3];
    const obj = { a: 1 };
    
    console.log(Array.isArray(arr)); // true
    console.log(Array.isArray(obj)); // false
    
  2. instanceof Array kullanmak. Bu, mevcut çerçeve veya pencerede oluşturulan diziler için çalışır. Çerçeveler veya çapraz alan senaryolarla çalışırken yanlış sonuçlar verebilir.

    const arr = [1, 2, 3];
    const obj = { a: 1 };
    
    console.log(arr instanceof Array); // true
    console.log(obj instanceof Array); // false
    
  3. Object.prototype.toString.call() kullanmak. Nesnenin türünün dize temsili döner. Diziler için "[object Array]" olur.

    const arr = [1, 2, 3];
    const obj = { a: 1 };
    
    console.log(Object.prototype.toString.call(arr) === '[object Array]'); // true
    console.log(Object.prototype.toString.call(obj) === '[object Array]'); // false
    

En tercih edilen yöntem Array.isArray() kullanmaktır, çünkü güvenilirdir ve yürütme bağlamıyla ilgili yan etkileri yoktur.