Junior
Kako proveriti da li je ovo polje niz?
sobes.tech АИ
Одговор од АИ
Postoji nekoliko načina da proverite da li je dato polje niz:
-
Array.isArray(): Najpreferiraniji i savremen način.// Proverava da li je vrednost niz. // Vraća true ili false. Array.isArray([]); // true Array.isArray({}); // false Array.isArray(null); // false Array.isArray(undefined); // false Array.isArray(123); // false Array.isArray('string'); // false -
instanceof Array: Radi za nizove kreirane u trenutnom okviru.// Proverava da li je objekat instanca klase Array. // Može dati netačne rezultate pri radu sa iframe-ovima. [] instanceof Array; // true new Array() instanceof Array; // true ({}); // false -
Object.prototype.toString.call(): Pouzdan način koji zaobilazi probleme sainstanceofu različitim okvirima.// Vraća string reprezentaciju tipa objekta. // Za nizove vraća "[object Array]". Object.prototype.toString.call([]); // "[object Array]" Object.prototype.toString.call({}); // "[object Object]" Object.prototype.toString.call(null); // "[object Null]" Object.prototype.toString.call(undefined); // "[object Undefined]" -
Provera svojstva
constructor: Manje pouzdano, jer se svojstvoconstructormože menjati.// Proverava da li je konstruktor objekta Array. [].constructor === Array; // true ({}).constructor === Object; // false
Najpreporučljiviji i najpouzdaniji način u većini slučajeva je korišćenje Array.isArray().