Junior
Cum puteți verifica dacă acest câmp este un array?
sobes.tech AI
Răspuns de la AI
Există mai multe moduri de a verifica dacă un câmp dat este un array:
-
Array.isArray(): Cel mai preferat și modern mod.// Verifică dacă valoarea este un array. // Returnează true sau false. Array.isArray([]); // true Array.isArray({}); // false Array.isArray(null); // false Array.isArray(undefined); // false Array.isArray(123); // false Array.isArray('șir'); // false -
instanceof Array: Funcționează pentru array-urile create în cadrul curent.// Verifică dacă obiectul este o instanță a clasei Array. // Poate da rezultate incorecte când se lucrează cu iframe-uri. [] instanceof Array; // true new Array() instanceof Array; // true ({}); // false -
Object.prototype.toString.call(): Mod de încredere, evită problemele cuinstanceofîn diferite cadre.// Returnează o reprezentare în șir a tipului obiectului. // Pentru array-uri, returnează "[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]" -
Verificarea proprietății
constructor: Mai puțin fiabil, deoarece proprietateaconstructorpoate fi modificată.// Verifică dacă constructorul obiectului este Array. [].constructor === Array; // true ({}).constructor === Object; // false
Cel mai recomandat și fiabil mod în majoritatea cazurilor este utilizarea Array.isArray().