Junior
Cum să verifici dacă un obiect este un array?
sobes.tech AI
Răspuns de la AI
Există mai multe modalități:
-
Folosiți
Array.isArray(). Este cea mai fiabilă și recomandată metodă.const arr = [1, 2, 3]; const obj = { a: 1 }; console.log(Array.isArray(arr)); // true console.log(Array.isArray(obj)); // false -
Folosiți
instanceof Array. Funcționează pentru array-urile create în cadrul sau fereastra curentă. Poate da rezultate false când lucrați cu cadre sau scenarii cross-domain.const arr = [1, 2, 3]; const obj = { a: 1 }; console.log(arr instanceof Array); // true console.log(obj instanceof Array); // false -
Folosiți
Object.prototype.toString.call(). Returnează o reprezentare în șir a tipului obiectului. Pentru array-uri, este"[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
Metoda cea mai recomandată este utilizarea Array.isArray(), deoarece este fiabilă și nu are efecte secundare legate de contextul de execuție.