Middle
Miks JavaScriptis peamisi massiivifunktsioonid peetakse objektideks?
sobes.tech AI
Vastus AI-lt
JavaScriptis on massiivid eriline objektitüüp.
Peamised põhjused:
- Pärimine
Object.prototype-st: Massiivid pärivad omadusi ja meetodeid põhiprototüübistObject.prototype. See võimaldab neil omada ühiseid meetodeid, nagutoString(),hasOwnProperty()ja teised, mis on tüüpilised objektidele. - Omadused: Massiividel on omadused, nagu ka objektidel. Kõige levinum on
length, mis näitab elementide arvu. Massiivi elementidele pääseb ligi numbriliste võtmete kaudu, mis sarnaneb objekti omaduste ligipääsuga string-võtmete kaudu, ainult et siin on võtmed stringi kujutised numbritest. - Käitumine: Kuigi nad on spetsialiseeritud (järjestatud kogum elementidest numbriliste indeksite järgi), kattub massiivide käitumine paljudes aspektides tavaliste objektide käitumisega. Näiteks saab neile lisada mis tahes omadusi (kuigi see ei ole soovitatav loetavuse säilitamiseks).
// Massiiv kui spetsialiseeritud objekt
let myArray = [1, 2, 3];
// Pääs omadusele length
console.log(myArray.length); // Näitab 3
// Pääs elemendile indeksiga ("0" võti)
console.log(myArray[0]); // Näitab 1
// Lisada mis tahes omadus (mitte standardne)
myArray.myProperty = "hello";
console.log(myArray.myProperty); // Näitab "hello"
// Kontrollida, kas Object.prototype'ist pärinev omadus on olemas
console.log(myArray.hasOwnProperty('length')); // Näitab true