Objekty JavaScriptu
Objekty, vlastnosti a metody skutečného života
V reálném životě je auto objekt .
Auto má vlastnosti , jako je hmotnost a barva, a metody jako start a stop:
Objekt | Vlastnosti | Metody |
---|---|---|
car.name = Fiat car.model = 500 car.weight = 850kg car.color = white |
car.start() car.drive() car.brake() car.stop() |
Všechna auta mají stejné vlastnosti , ale hodnoty vlastností se liší auto od auta.
Všechny vozy mají stejné metody , ale metody se provádějí v různých časech .
Objekty JavaScriptu
Již jste se naučili, že proměnné JavaScriptu jsou kontejnery pro datové hodnoty.
Tento kód přiřadí jednoduchou hodnotu (Fiat) proměnné s názvem auto:
let car = "Fiat";
Objekty jsou také proměnné. Ale objekty mohou obsahovat mnoho hodnot.
Tento kód přiřazuje mnoho hodnot (Fiat, 500, bílá) proměnné s názvem auto:
const car = {type:"Fiat", model:"500", color:"white"};
Hodnoty se zapisují jako dvojice název:hodnota (název a hodnota oddělené dvojtečkou).
Je běžnou praxí deklarovat objekty klíčovým slovem const .
Více o použití const s objekty se dozvíte v kapitole: JS Const .
Definice objektu
Objekt JavaScript definujete (a vytvoříte) pomocí objektového literálu:
Příklad
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Mezery a zalomení řádků nejsou důležité. Definice objektu může zahrnovat více řádků:
Příklad
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};
Vlastnosti objektu
Páry název:hodnoty v objektech JavaScript se nazývají vlastnosti :
Vlastnictví | Hodnota majetku |
---|---|
jméno | John |
příjmení | Srna |
stáří | 50 |
barva očí | modrý |
Přístup k vlastnostem objektu
K vlastnostem objektu můžete přistupovat dvěma způsoby:
objectName.propertyName
nebo
objectName["propertyName"]
Příklad1
person.lastName;
Příklad2
person["lastName"];
Objekty JavaScriptu jsou kontejnery pro pojmenované hodnoty nazývané vlastnosti.
Objektové metody
Objekty mohou mít také metody .
Metody jsou akce , které lze provádět s objekty.
Metody jsou uloženy ve vlastnostech jako definice funkcí .
Vlastnictví | Hodnota majetku |
---|---|
jméno | John |
příjmení | Srna |
stáří | 50 |
barva očí | modrý |
celé jméno | function() {return this.firstName + " " + this.lastName;} |
Metoda je funkce uložená jako vlastnost.
Příklad
const person = {
firstName: "John",
lastName : "Doe",
id : 5566,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};
Toto klíčové slovo
V definici funkce this
odkazuje na "vlastníka" funkce.
Ve výše uvedeném příkladu this
je objekt osoba , která "vlastní"
fullName
funkci.
Jinými slovy this.firstName
znamená firstName
vlastnost tohoto objektu .
Přečtěte si více o this
klíčovém slově na JS this Keyword .
Přístup k objektovým metodám
K metodě objektu přistupujete s následující syntaxí:
objectName.methodName()
Příklad
name = person.fullName();
Pokud přistoupíte k metodě bez závorek (), vrátí definici funkce :
Příklad
name = person.fullName;
Nedeklarujte řetězce, čísla a logické hodnoty jako objekty!
Když je proměnná JavaScript deklarována s klíčovým slovem „ new
“, proměnná se vytvoří jako objekt:
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
Vyhněte se objektům String
, Number
, a . Boolean
Komplikují váš kód a zpomalují rychlost provádění.
Více o objektech se dozvíte později v tomto tutoriálu.