Junior
Cum se determină dacă o variabilă conține un array?
sobes.tech AI
Răspuns de la AI
Cea mai fiabilă metodă este utilizarea Array.isArray():
// Verifică dacă valoarea este un array
Array.isArray(variabilaMea);
Această metodă returnează true dacă variabila este un array și false în caz contrar, indiferent de contextul de execuție sau alți factori.
Alte metode mai puțin fiabile includ:
-
typeof:// Pentru array-uri, typeof va returna 'object' typeof variabilaMea === 'object';Este mai puțin fiabil, deoarece
typeofreturnează'object'pentru multe tipuri de date, nu doar pentru array-uri (obiecte, null). -
instanceof:// Verifică dacă obiectul este o instanță a clasei Array variabilaMea instanceof Array;Poate fi mai puțin fiabil când se lucrează cu iframe-uri sau ferestre cu contexte de execuție JavaScript diferite, unde
Arraydintr-un context diferă de celălalt. -
Verificarea constructorului:
// Verifică dacă constructorul variabilei este Array variabilaMea.constructor === Array;Poate avea probleme în diferite contexte de execuție.
Tabel rezumat:
| Metodă | Fiabilitate | Descriere |
|---|---|---|
Array.isArray() |
Înaltă | Specializat pentru verificarea array-urilor. |
typeof variabilaMea |
Scăzută | Pentru array-uri, returnează 'object'. |
variabilaMea instanceof Array |
Medie/Scăzută (în funcție de context) | Verifică dacă aparține clasei Array. |
variabilaMea.constructor === Array |
Medie/Scăzută (în funcție de context) | Verifică proprietatea constructor. |
Prin urmare, Array.isArray() este metoda preferată și cea mai fiabilă.