JavaScript- objecten
In JavaScript zijn objecten koning. Als u objecten begrijpt, begrijpt u JavaScript.
In JavaScript is bijna "alles" een object.
- Booleans kunnen objecten zijn (indien gedefinieerd met het
new
trefwoord) - Getallen kunnen objecten zijn (indien gedefinieerd met het
new
trefwoord) - Strings kunnen objecten zijn (indien gedefinieerd met het
new
trefwoord) - Datums zijn altijd objecten
- Wiskunde zijn altijd objecten
- Reguliere expressies zijn altijd objecten
- Arrays zijn altijd objecten
- Functies zijn altijd objecten
- Objecten zijn altijd objecten
Alle JavaScript-waarden, behalve primitieven, zijn objecten.
JavaScript-primitieven
Een primitieve waarde is een waarde die geen eigenschappen of methoden heeft.
Een primitief gegevenstype zijn gegevens met een primitieve waarde.
JavaScript definieert 5 soorten primitieve gegevenstypen:
string
number
boolean
null
undefined
Primitieve waarden zijn onveranderlijk (ze zijn hard gecodeerd en kunnen daarom niet worden gewijzigd).
als x = 3,14, kunt u de waarde van x wijzigen. Maar u kunt de waarde van 3.14 niet wijzigen.
Waarde | Type | Commentaar |
---|---|---|
"Hallo" | snaar | "Hallo" is altijd "Hallo" |
3.14 | nummer | 3.14 is altijd 3.14 |
waar | booleaans | waar is altijd waar |
vals | booleaans | onwaar is altijd onwaar |
nul | nul (object) | nul is altijd nul |
ongedefinieerd | ongedefinieerd | ongedefinieerd is altijd ongedefinieerd |
Objecten zijn variabelen
JavaScript-variabelen kunnen enkele waarden bevatten:
Voorbeeld
let person = "John Doe";
JavaScript-variabelen kunnen ook veel waarden bevatten.
Objecten zijn ook variabelen. Maar objecten kunnen veel waarden bevatten.
Objectwaarden worden geschreven als naam : waardeparen (naam en waarde gescheiden door een dubbele punt).
Voorbeeld
let person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Een JavaScript-object is een verzameling benoemde waarden
Het is gebruikelijk om objecten met het const
sleutelwoord te declareren.
Voorbeeld
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Objecteigenschappen
De benoemde waarden in JavaScript-objecten worden eigenschappen genoemd .
Eigendom | Waarde |
---|---|
Voornaam | John |
achternaam | doe |
leeftijd | 50 |
oogkleur | blauw |
Objecten die zijn geschreven als naamwaardeparen zijn vergelijkbaar met:
- Associatieve arrays in PHP
- Woordenboeken in Python
- Hashtabellen in C
- Hash-kaarten in Java
- Hashes in Ruby en Perl
Objectmethoden
Methoden zijn acties die op objecten kunnen worden uitgevoerd.
Objecteigenschappen kunnen zowel primitieve waarden als andere objecten en functies zijn.
Een objectmethode is een objecteigenschap die een functiedefinitie bevat .
Eigendom | Waarde |
---|---|
Voornaam | John |
achternaam | doe |
leeftijd | 50 |
oogkleur | blauw |
voor-en achternaam | function() {return this.firstName + " " + this.lastName;} |
JavaScript-objecten zijn containers voor benoemde waarden, eigenschappen en methoden genoemd.
In de volgende hoofdstukken leert u meer over methoden.
Een JavaScript-object maken
Met JavaScript kunt u uw eigen objecten definiëren en maken.
Er zijn verschillende manieren om nieuwe objecten te maken:
- Maak een enkel object met een letterlijk object.
- Maak een enkel object, met het trefwoord
new
. - Definieer een objectconstructor en maak vervolgens objecten van het geconstrueerde type.
- Maak een object met
Object.create()
.
Een object letterlijk gebruiken
Dit is de gemakkelijkste manier om een JavaScript-object te maken.
Door een letterlijk object te gebruiken, definieert en maakt u een object in één instructie.
Een letterlijke object is een lijst van naam:waarde-paren (zoals leeftijd:50) binnen accolades {}.
In het volgende voorbeeld wordt een nieuw JavaScript-object gemaakt met vier eigenschappen:
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"
};
In dit voorbeeld wordt een leeg JavaScript-object gemaakt en worden vervolgens 4 eigenschappen toegevoegd:
Voorbeeld
const person = {};
person.firstName = "John";
person.lastName = "Doe";
person.age = 50;
person.eyeColor = "blue";
Het JavaScript-sleutelwoord nieuw gebruiken
In het volgende voorbeeld wordt een nieuw JavaScript-object gemaakt met new Object()
, en worden vervolgens 4 eigenschappen toegevoegd:
Voorbeeld
const person = new Object();
person.firstName = "John";
person.lastName = "Doe";
person.age = 50;
person.eyeColor = "blue";
De bovenstaande voorbeelden doen precies hetzelfde.
Maar het is niet nodig om te gebruiken new Object()
.
Gebruik voor leesbaarheid, eenvoud en uitvoeringssnelheid de letterlijke objectmethode.
JavaScript-objecten zijn veranderlijk
Objecten zijn veranderlijk: ze worden geadresseerd door verwijzing, niet door waarde.
Als persoon een object is, zal de volgende verklaring geen kopie van persoon maken:
const x = person; // Will not create a copy of person.
Het object x is geen kopie van persoon. Het is persoon. Zowel x als persoon zijn hetzelfde object.
Elke wijziging in x zal ook van persoon veranderen, omdat x en persoon hetzelfde object zijn.
Voorbeeld
const person = {
firstName:"John",
lastName:"Doe",
age:50, eyeColor:"blue"
}
const x = person;
x.age = 10; // Will change both x.age and person.age