JavaScript-objektin ominaisuudet

Ominaisuudet ovat tärkein osa mikä tahansa JavaScript-objekti.

JavaScript-ominaisuudet

Ominaisuus viittaa arvoon, joka liittyy JavaScript-objektiin.

JavaScript-objektit ovat epäjärjestäytyneiden ominaisuuksien kokoelma.

Ominaisuudet voidaan yleensä muuttaa, lisätä ja poistaa, mutta jotkut ominaisuudet ovat vain lukuja.

Pääsy JavaScript-ominaisuuksiin

Objektin ominaisuuden pääsy syntax on:

objektiNimi.ominaisuus           // person.age

tai:

objektiNimi["ominaisuus]       // person["age"]

tai:

objektiNimi[ilmaisu]       // x = "age"; person[x]

Ilmaisu on laskettava ominaisuuden nimeksi.

Esimerkki 1

person.firstname + " is " + person.age + " years old.";

Kokeile itse

Esimerkki 2

person["firstname"] + " is " + person["age"] + " years old.";

Kokeile itse

JavaScript for...in-silmukka

JavaScript for...in lause kiertää objektin ominaisuuksia.

syntaksi

for (muuttuja in objekti) {
    Suoritettava koodi
}

for...in Kierroksessa oleva koodibloki suoritetaan kerran jokaiselle ominaisuudelle.

Kierros objektin ominaisuuksilla:

Esimerkki

var person = {fname:"Bill", lname:"Gates", age:62}; 
for (x in person) {
    txt += person[x];
}

Kokeile itse

Lisää uusi ominaisuus

Voit lisätä uusia ominaisuuksia olemassa olevaan objektiin yksinkertaisella arvolla.

Oletetaan, että person-objekti on olemassa - silloin voit lisätä sille uusia ominaisuuksia:

Esimerkki

person.nationality = "English";

Kokeile itse

Et voi käyttää varattuja sanoja ominaisuuden (tai metodin) nimessä. Käytä JavaScript-nimikkeiden sääntöjä.

Poista ominaisuus

delete Poista ominaisuus objektista avainsanalla:

Esimerkki

var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
delete person.age;   // Tai delete person["age"];

Kokeile itse

delete Avainsana poistaa sekä ominaisuuden arvon että ominaisuuden itsensä.

Ominaisuus ei ole käytettävissä, kun se poistetaan ja ennen kuin se lisätään takaisin.

delete Operatori on suunniteltu käytettäväksi objektin ominaisuuksissa. Se ei vaikuta muuttujiin tai funktioihin.

delete Operatoria ei tulisi käyttää ennalta määriteltyihin JavaScript-objektin ominaisuuksiin. Tämä voi aiheuttaa sovelluksen kaatumisen.

Ominaisuusarvo

Kaikilla ominaisuuksilla on nimi. Lisäksi niillä on arvo.

Arvo on ominaisuuksien yksi.

Muita ominaisuuksia ovat muun muassa luettavissa, mukautettavissa ja kirjoitettavissa.

Nämä ominaisuudet määrittelevät, miten ominaisuus tarkistetaan (onko se luettavissa vai kirjoitettavissa?)

JavaScriptissä kaikki ominaisuudet ovat luettavissa, mutta vain arvot ovat muokattavissa (vain kun ominaisuus on kirjoitettavissa).

(ECMAScript 5 tarjoaa menetelmät kaikkien ominaisuuksien ominaispiirteiden hakemiseen ja asettamiseen)

Prototyyppiominaisuudet

JavaScript-objektit perivät niiden prototyypin ominaisuudet.

delete Avainsanat eivät poista perimistä ominaisuuksia, mutta jos poistat jonkin prototyyppimäärittelyn, se vaikuttaa kaikkiin perimään perittyihin objekteihin.