JavaScript- objecten
Objecten, eigenschappen en methoden uit het echte leven
In het echte leven is een auto een object .
Een auto heeft eigenschappen als gewicht en kleur, en methoden als starten en stoppen:
Object | Eigenschappen | Methoden: |
---|---|---|
auto.naam = Fiat auto.model = 500 auto.gewicht = 850kg auto.kleur = wit |
auto.start() auto.rijden() auto.rem() auto.stop() |
Alle auto's hebben dezelfde eigenschappen , maar de waarde van het bezit verschilt van auto tot auto.
Alle auto's hebben dezelfde methoden , maar de methoden worden op verschillende tijdstippen uitgevoerd .
JavaScript-objecten
U hebt al geleerd dat JavaScript-variabelen containers voor gegevenswaarden zijn.
Deze code kent een eenvoudige waarde (Fiat) toe aan een variabele met de naam auto:
let car = "Fiat";
Objecten zijn ook variabelen. Maar objecten kunnen veel waarden bevatten.
Deze code kent veel waarden (Fiat, 500, wit) toe aan een variabele met de naam auto:
const car = {type:"Fiat", model:"500", color:"white"};
De waarden worden geschreven als naam:waarde -paren (naam en waarde gescheiden door een dubbele punt).
Het is gebruikelijk om objecten te declareren met het sleutelwoord const .
Lees meer over het gebruik van const met objecten in het hoofdstuk: JS Const .
Objectdefinitie
U definieert (en maakt) een JavaScript-object met een letterlijk object:
Voorbeeld
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Spaties en regeleinden zijn niet belangrijk. Een objectdefinitie kan meerdere regels omvatten:
Voorbeeld
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};
Objecteigenschappen
De naam:waarden -paren in JavaScript-objecten worden eigenschappen genoemd :
Eigendom | Eigendoms-waarde |
---|---|
Voornaam | John |
achternaam | doe |
leeftijd | 50 |
oogkleur | blauw |
Objecteigenschappen openen
U kunt op twee manieren toegang krijgen tot objecteigenschappen:
objectName.propertyName
of
objectName["propertyName"]
Voorbeeld 1
person.lastName;
Voorbeeld2
person["lastName"];
JavaScript-objecten zijn containers voor benoemde waarden die eigenschappen worden genoemd.
Objectmethoden
Objecten kunnen ook methoden hebben .
Methoden zijn acties die op objecten kunnen worden uitgevoerd.
Methoden worden opgeslagen in eigenschappen als functiedefinities .
Eigendom | Eigendoms-waarde |
---|---|
Voornaam | John |
achternaam | doe |
leeftijd | 50 |
oogkleur | blauw |
voor-en achternaam | function() {return this.firstName + " " + this.lastName;} |
Een methode is een functie die is opgeslagen als een eigenschap.
Voorbeeld
const person = {
firstName: "John",
lastName : "Doe",
id : 5566,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};
Het dit trefwoord
Verwijst in een functiedefinitie this
naar de "eigenaar" van de functie.
In het bovenstaande voorbeeld this
is het persoonsobject dat de functie "bezit"
fullName
.
Met andere woorden, this.firstName
betekent de firstName
eigenschap van dit object .
Lees meer over het this
trefwoord bij JS dit Trefwoord .
Toegang tot objectmethoden
U krijgt toegang tot een objectmethode met de volgende syntaxis:
objectName.methodName()
Voorbeeld
name = person.fullName();
Als u een methode opent zonder de () haakjes, wordt de functiedefinitie geretourneerd :
Voorbeeld
name = person.fullName;
Verklaar geen strings, getallen en booleans als objecten!
Wanneer een JavaScript-variabele wordt gedeclareerd met het trefwoord " new
", wordt de variabele gemaakt als een object:
x = new String(); // Declares x as a String object
y = new Number(); // Declares y as a Number object
z = new Boolean(); // Declares z as a Boolean object
Vermijd String
, Number
, en Boolean
objecten. Ze compliceren uw code en vertragen de uitvoeringssnelheid.
Later in deze zelfstudie leert u meer over objecten.