JavaScript Objektattribut
- Föregående sida JS objektdefinition
- Nästa sida JS objektmetoder
Egenskaper är den viktigaste delen av ett JavaScript-objekt.
JavaScript-egenskaper
Egenskaper är värden som är relaterade till JavaScript-objekt.
JavaScript-objekt är en samling av oordnade egenskaper.
Egenskaper kan vanligtvis ändras, läggas till och tas bort, men vissa egenskaper är skrivskyddade.
Komma åt JavaScript-egenskaper
Syntaks för att komma åt objektegenskaper är:
objektnamn.egenskap // person.age
eller:
objektnamn["egenskap] // person["age"]
eller:
objektnamn[uttryck] // x = "age"; person[x]
Uttrycket måste beräknas till ett egenskapsnamn.
Exempel 1
person.fname + " is " + person.age + " years old.";
Exempel 2
person["fname"] + " is " + person["age"] + " years old.";
JavaScript for...in-loop
JavaScript for...in
sats som itererar över objektets egenskaper.
syntax
for (variable in object) { Kod att köra }
for...in
Koden inom loopen kommer att köras en gång för varje egenskap.
Iterera över objektets egenskaper:
Exempel
var person = {fname:"Bill", lname:"Gates", age:62}; for (x in person) { txt += person[x]; }
Lägg till nya egenskaper
Du kan lägga till nya egenskaper till ett befintligt objekt genom enkel tilldelning.
Anta att person-objektet redan finns - då kan du lägga till nya egenskaper för det:
Exempel
person.nationality = "English";
Du kan inte använda reserverade ord som egenskapsnamn (eller metodnamn). Använd JavaScript-namngivningsregler.
Ta bort egenskap
delete
Ta bort egenskap från objekt:
Exempel
var person = {fname:"Bill", lname:"Gates", age:62}; delete person.age; // Eller delete person["age"];
delete
Nyckelordet tar bort både värdet och egenskapen.
Egenskapen är inte tillgänglig efter att den har tagits bort, förrän den läggs tillbaka.
delete
Operatören är designad för att användas på objektegenskaper. Den har ingen inverkan på variabler eller funktioner.
delete
Operatören bör inte användas på fördefinierade JavaScript-objektegenskaper. Detta kan leda till att applikationen kraschar.
Egenskapsvärde
Alla egenskaper har ett namn. Dessutom har de värden.
Värdet är en egenskap av egenskapen.
Andra egenskaper inkluderar: listbar, konfigurerbar, skrivbar.
Dessa egenskaper definierar hur egenskapen nås (är den läsbart eller skrivbar?)
I JavaScript är alla egenskaper läsbart, men endast värdena är ändringsbara (endast när egenskapen är skrivbar).
(ECMAScript 5 har metoder för att få och sätta egenskapsattribut för alla egenskaper)
Prototypens egenskaper
JavaScript objekt ärver sina prototyps egenskaper.
delete
Nyckelordet tar inte bort ärvda egenskaper, men om du tar bort en prototypens egenskap, kommer detta att påverka alla objekt som ärver från prototypen.
- Föregående sida JS objektdefinition
- Nästa sida JS objektmetoder