Sobes.tech
Junior

Kako proveriti da li je objekat niz?

sobes.tech АИ

Одговор од АИ

Postoji nekoliko načina:

  1. Koristite Array.isArray(). Ovo je najpouzdaniji i preporučeni način.

    const arr = [1, 2, 3];
    const obj = { a: 1 };
    
    console.log(Array.isArray(arr)); // true
    console.log(Array.isArray(obj)); // false
    
  2. Koristite instanceof Array. Radi za nizove kreirane u trenutnom okviru ili prozoru. Može davati lažne rezultate pri radu sa okvirima ili scenarijima cross-domain.

    const arr = [1, 2, 3];
    const obj = { a: 1 };
    
    console.log(arr instanceof Array); // true
    console.log(obj instanceof Array); // false
    
  3. Koristite Object.prototype.toString.call(). Vraća nizovni prikaz tipa objekta. Za nizove, to je "[object Array]".

    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
    

Najpreporučljiviji način je korišćenje Array.isArray(), jer je pouzdan i nema sporednih efekata povezani sa kontekstom izvršenja.