A való életben az autó egytárgy.
Az autónak vannak olyan tulajdonságai, mint a tömeg és a szín, valamint a módszerek, például az indítás és a leállítás:
| Object | Properties | Methods |
|---|---|---|
|
car.name = Fiat car.model = 500 car.weight = 850kg car.color = white |
car.start() car.drive() car.brake() car.stop() |
Minden autónak ugyanazok a tulajdonságai, de az ingatlanok értékei autónként eltérőek.
Minden autónak ugyanazok amódszerei vannak, de a módszereket végrehajtják különböző időpontokban.
Már megtanulta, hogy a JavaScript-változók azok tárolók az adatértékek számára.
Ez a kód egyszerű értéket (Fiat) rendel hozzá egy változó nevű autó:
let car = "Fiat";Próbálja ki Ön is →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Variables</h2>
<p id="demo"></p>
<script>
// Create and display a variable:
let car = "Fiat";
document.getElementById("demo").innerHTML = car;
</script>
</body>
</html>
Az objektumok is változók. De az objektumok sokfélét tartalmazhatnak értékeket.
Ez a kód sok értéket (Fiat, 500, fehér) rendel hozzá a változó nevű autó:
const car = {type:"Fiat", model:"500", color:"white"};Próbálja ki Ön is →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Objects</h2>
<p id="demo"></p>
<script>
// Create an object:
const car = {type:"Fiat", model:"500", color:"white"};
// Display some data from the object:
document.getElementById("demo").innerHTML = "The car type is " + car.type;
</script>
</body>
</html>
Az értékek név:érték párokként vannak kiírva (a név és az érték elválasztva a kettőspont).
Általános gyakorlat, hogy az objektumokat a const kulcsszóval deklarálják.
További információ a const objektumokkal való használatáról a következő fejezetben található: JS Const.
Egy JavaScript objektumot egy objektum literállal határoz meg (és hoz létre):
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};Próbálja ki Ön is →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Objects</h2>
<p id="demo"></p>
<script>
// Create an object:
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
// Display some data from the object:
document.getElementById("demo").innerHTML =
person.firstName + " is " + person.age + " years old.";
</script>
</body>
</html>
A szóközök és a sortörések nem fontosak. Egy objektumdefiníció több sorra is kiterjedhet:
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};Próbálja ki Ön is →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Objects</h2>
<p id="demo"></p>
<script>
// Create an object:
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};
// Display some data from the object:
document.getElementById("demo").innerHTML =
person.firstName + " is " + person.age + " years old.";
</script>
</body>
</html>
A JavaScript objektumokban lévő név:értékek párokat tulajdonságoknak nevezik:
János
Dámvadtehén
50
kék
Az objektum tulajdonságait kétféleképpen érheti el:
objectName.propertyNamevagy
objectName["propertyName"]person.lastName;Próbálja ki Ön is →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Objects</h2>
<p>There are two different ways to access an object property.</p>
<p>You can use person.property or person["property"].</p>
<p id="demo"></p>
<script>
// Create an object:
const person = {
firstName: "John",
lastName : "Doe",
id : 5566
};
// Display some data from the object:
document.getElementById("demo").innerHTML =
person.firstName + " " + person.lastName;
</script>
</body>
</html>
person["lastName"];Próbálja ki Ön is →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Objects</h2>
<p>There are two different ways to access an object property.</p>
<p>You can use person.property or person["property"].</p>
<p id="demo"></p>
<script>
// Create an object:
const person = {
firstName: "John",
lastName : "Doe",
id : 5566
};
// Display some data from the object:
document.getElementById("demo").innerHTML =
person["firstName"] + " " + person["lastName"];
</script>
</body>
</html>
A JavaScript-objektumok a tulajdonságoknak nevezett elnevezett értékek tárolói.
Az objektumoknak is lehetnek módszerei.
A metódusok olyan műveletek, amelyeket objektumokon lehet végrehajtani.
A módszerek a tulajdonságokban függvényként tárolódnak meghatározásokra.
János
Dámvadtehén
50
kék
function() {return this.firstName + " " + this.lastName;}
A metódus egy tulajdonságként tárolt függvény.
const person = {
firstName: "John",
lastName : "Doe",
id : 5566,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};A fenti példában a ez a személy objektumra utal.
AZAZ. A this.firstName az ennek firstName tulajdonságát jelenti.
AZAZ. A this.firstName a person firstName tulajdonságát jelenti.
A JavaScriptben a ez a kulcsszó egy objektumra utal.
Melyik objektum attól függ, hogy ezt hogyan hívják meg (használják vagy hívják).
A ez a kulcsszó a használat módjától függően különböző objektumokra utal:
Egy objektummetódusban a ez az objektumra utal.
Önmagában ez a globális objektumra utal.
Egy függvényben a ez a globális objektumra utal.
Egy függvényben szigorú módban ez definiálatlan.
Egy eseményben a ez arra az elemre utal, amely az eseményt fogadta.
Olyan módszerek, mint a call(), apply() és a bind() utalhat ezre bármely objektumra.
ez nem változó. Ez egy kulcsszó. A ez értéke nem módosítható.
A JavaScript ezt bemutatója
A függvénydefinícióban a ez a függvény "tulajdonosára" utal.
A fenti példában ez az a személy objektum, amely "tulajdonos" fullName függvényt.
Más szavakkal, a this.firstName az ennek az objektumnak a firstName tulajdonságát jelenti.
Tudjon meg többet erről A JavaScript ebben az oktatóanyagban.
Egy objektummetódushoz a következő szintaxissal érhet el:
objectName.methodName()name = person.fullName();Próbálja ki Ön is →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Objects</h2>
<p>An object method is a function definition, stored as a property value.</p>
<p id="demo"></p>
<script>
// Create an object:
const person = {
firstName: "John",
lastName: "Doe",
id: 5566,
fullName: function() {
return this.firstName + " " + this.lastName;
}
};
// Display data from the object:
document.getElementById("demo").innerHTML = person.fullName();
</script>
</body>
</html>
Ha egy metódust a() zárójelek nélkül ér el, akkor az visszaadja a függvénydefiníciót:
name = person.fullName;Próbálja ki Ön is →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Objects</h2>
<p>If you access an object method without (), it will return the function definition:</p>
<p id="demo"></p>
<script>
// Create an object:
const person = {
firstName: "John",
lastName : "Doe",
id : 5566,
fullName : function() {
return this.firstName + " " + this.lastName;
}
};
// Display data from the object:
document.getElementById("demo").innerHTML = person.fullName;
</script>
</body>
</html>
Ha egy JavaScript-változót a "new kulcsszóval deklarálunk, a változó mint egy tárgy:
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 objectKerülje a karakterlánc, szám és logikai objektumokat . Bonyolítják a kódot és lelassulnak végrehajtási sebesség.
Az oktatóanyag későbbi részében többet megtudhat az objektumokról.