Middle
De ce funcțiile array sunt considerate obiecte în JavaScript?
sobes.tech AI
Răspuns de la AI
În JavaScript, array-urile sunt un tip special de obiect.
Principalele motive:
- Moștenirea de la
Object.prototype: Array-urile moștenesc proprietăți și metode de la prototipul de bazăObject.prototype. Acest lucru le permite să aibă metode comune, cum ar fitoString(),hasOwnProperty()și altele, caracteristice obiectelor. - Proprietăți: Array-urile au proprietăți, la fel ca obiectele. Cea mai comună este
length, care indică numărul de elemente. Accesul la elementele array-ului se face prin chei numerice, similar cu accesul la proprietățile unui obiect prin chei de șiruri, doar că în acest caz cheile sunt reprezentări de șiruri ale numerelor. - Comportament: În ciuda specializării lor (colecție ordonată de elemente după indici numerici), comportamentul array-urilor în multe privințe coincide cu cel al obiectelor obișnuite. De exemplu, li se pot adăuga proprietăți arbitrare (deși nu este recomandat pentru a menține lizibilitatea).
// Array ca obiect specializat
let myArray = [1, 2, 3];
// Accesarea proprietății length
console.log(myArray.length); // Va afișa 3
// Accesarea unui element după index (cheia "0")
console.log(myArray[0]); // Va afișa 1
// Adăugarea unei proprietăți arbitrare (non-standard)
myArray.myProperty = "hello";
console.log(myArray.myProperty); // Va afișa "hello"
// Verificarea existenței unei proprietăți moștenite de la Object.prototype
console.log(myArray.hasOwnProperty('length')); // Va afișa true