JavaScript -voorwerpe
In JavaScript is voorwerpe koning. As jy voorwerpe verstaan, verstaan jy JavaScript.
In JavaScript is byna "alles" 'n voorwerp.
- Boole kan voorwerpe wees (indien gedefinieer met die
new
sleutelwoord) - Getalle kan voorwerpe wees (indien gedefinieer met die
new
sleutelwoord) - Strings kan voorwerpe wees (indien gedefinieer met die
new
sleutelwoord) - Datums is altyd voorwerpe
- Wiskunde is altyd voorwerpe
- Gereelde uitdrukkings is altyd voorwerpe
- Skikkings is altyd voorwerpe
- Funksies is altyd voorwerpe
- Voorwerpe is altyd voorwerpe
Alle JavaScript-waardes, behalwe primitiewe, is objekte.
JavaScript Primitiewe
'n Primitiewe waarde is 'n waarde wat geen eienskappe of metodes het nie.
'n Primitiewe datatipe is data wat 'n primitiewe waarde het.
JavaScript definieer 5 tipes primitiewe datatipes:
string
number
boolean
null
undefined
Primitiewe waardes is onveranderlik (hulle is hardgekodeer en kan dus nie verander word nie).
as x = 3.14, kan jy die waarde van x verander. Maar jy kan nie die waarde van 3.14 verander nie.
Waarde | Tik | Lewer kommentaar |
---|---|---|
"Hallo" | string | "Hallo" is altyd "Hallo" |
3.14 | nommer | 3.14 is altyd 3.14 |
waar | boolean | waar is altyd waar |
onwaar | boolean | vals is altyd vals |
nul | nul (voorwerp) | nul is altyd nul |
ongedefinieerd | ongedefinieerd | ongedefinieerd is altyd ongedefinieerd |
Objekte is veranderlikes
JavaScript-veranderlikes kan enkele waardes bevat:
Voorbeeld
let person = "John Doe";
JavaScript-veranderlikes kan ook baie waardes bevat.
Voorwerpe is ook veranderlikes. Maar voorwerpe kan baie waardes bevat.
Voorwerpwaardes word geskryf as naam : waardepare (naam en waarde geskei deur 'n dubbelpunt).
Voorbeeld
let person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
'n JavaScript-objek is 'n versameling van benoemde waardes
Dit is 'n algemene praktyk om voorwerpe met die const
sleutelwoord te verklaar.
Voorbeeld
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Voorwerp Eienskappe
Die genoemde waardes, in JavaScript-objekte, word eienskappe genoem .
Eiendom | Waarde |
---|---|
eerste naam | John |
van | Doe |
ouderdom | 50 |
Oogkleur | blou |
Voorwerpe wat as naamwaardepare geskryf is, is soortgelyk aan:
- Assosiatiewe skikkings in PHP
- Woordeboeke in Python
- Hash-tabelle in C
- Hash kaarte in Java
- Hashes in Ruby en Perl
Voorwerp Metodes
Metodes is aksies wat op voorwerpe uitgevoer kan word.
Voorwerpeienskappe kan beide primitiewe waardes, ander voorwerpe en funksies wees.
'n Objekmetode is 'n objek-eienskap wat 'n funksiedefinisie bevat .
Eiendom | Waarde |
---|---|
eerste naam | John |
van | Doe |
ouderdom | 50 |
Oogkleur | blou |
volle naam | function() {stuur hierdie.voornaam terug + " " + hierdie.van;} |
JavaScript-objekte is houers vir benoemde waardes, genoem eienskappe en metodes.
Jy sal meer oor metodes in die volgende hoofstukke leer.
Skep 'n JavaScript-objek
Met JavaScript kan jy jou eie voorwerpe definieer en skep.
Daar is verskillende maniere om nuwe voorwerpe te skep:
- Skep 'n enkele voorwerp deur 'n letterlike voorwerp te gebruik.
- Skep 'n enkele voorwerp, met die sleutelwoord
new
. - Definieer 'n objekkonstruktor, en skep dan voorwerpe van die gekonstrueerde tipe.
- Skep 'n voorwerp deur
Object.create()
.
Gebruik 'n letterlike voorwerp
Dit is die maklikste manier om 'n JavaScript-objek te skep.
Deur 'n letterlike voorwerp te gebruik, definieer en skep jy 'n voorwerp in een stelling.
'n Letterlike voorwerp is 'n lys naam:waarde-pare (soos ouderdom:50) binne krullerige hakies {}.
Die volgende voorbeeld skep 'n nuwe JavaScript-objek met vier eienskappe:
Voorbeeld
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Spasies en lynbreuke is nie belangrik nie. 'n Objekdefinisie kan oor verskeie lyne strek:
Voorbeeld
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};
Hierdie voorbeeld skep 'n leë JavaScript-objek, en voeg dan 4 eienskappe by:
Voorbeeld
const person = {};
person.firstName = "John";
person.lastName = "Doe";
person.age = 50;
person.eyeColor = "blue";
Gebruik die JavaScript-sleutelwoord nuut
Die volgende voorbeeld skep 'n nuwe JavaScript-objek met new Object()
, en voeg dan 4 eienskappe by:
Voorbeeld
const person = new Object();
person.firstName = "John";
person.lastName = "Doe";
person.age = 50;
person.eyeColor = "blue";
Die voorbeelde hierbo doen presies dieselfde.
Maar dit is nie nodig om te gebruik nie new Object()
.
Vir leesbaarheid, eenvoud en uitvoeringspoed, gebruik die objek letterlike metode.
JavaScript-voorwerpe is veranderbaar
Objekte is veranderlik: Hulle word aangespreek deur verwysing, nie deur waarde nie.
As persoon 'n voorwerp is, sal die volgende stelling nie 'n kopie van persoon skep nie:
const x = person; // Will not create a copy of person.
Die voorwerp x is nie 'n kopie van persoon nie. Dit is persoon. Beide x en persoon is dieselfde voorwerp.
Enige veranderinge aan x sal ook van persoon verander, want x en persoon is dieselfde voorwerp.
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