Kezdőoldal » Számítástechnika » Programozás » [JavaScript] - Mi a különbség...

[JavaScript] - Mi a különbség a prototipus/property és az osztály/class között?

Figyelt kérdés
Alkérdés: - A prototipus és a property (tulajdonság) ugyan az, vagy itt is keverek valamit?
2018. dec. 10. 19:08
 1/5 A kérdező kommentje:

Ez a property:


let animal2 =

{

name: "",

age: 0,

height: 0

};


Ez a property konstruktorral:


function Person(first, last, age, eye)

{

this.firstName = first;

this.lastName = last;

this.age = age;

this.eyeColor = eye;

// Adding a function inside ctor.

this.fullName = function ()

{

return this.firstName + " " + this.lastName;

}

}



És ez pedig egy osztály:


class AnimalClass

{

name = "";


constructor(nameOfTheAnimal)

{

this.name = nameOfTheAnimal;

}

}



De mi a prototipus? Eddég jól értelmezem?

2018. dec. 10. 19:16
 2/5 anonim ***** válasza:
A property egy objektum adattagja, pl az animal2-es példa esetében a 'name' az animal2 egyik propertyje. Ez nem ugyanaz mint a prototípus. A prototípus/prototype egy objektum őseként értelmezhető, pl az animal2 prototípusa az Object lesz, annak minden adattagjával, metódusával, miegyébbel. De megcisnálhatod azt, hogy csinálsz egy új objektumtípust, aminek beálíltod prototípusának az animal2-t. Ezesetben annak a prototípusa az animal2 lesz, melynek a prototípusa az Object lesz. Ez a prototípus lánc. A lényege, hogy egy objektumon hívott adattagok, és függvények mennek felfelé a prototípus láncon egész addig, amíg valahol nem találja azt meg.
2018. dec. 10. 19:49
Hasznos számodra ez a válasz?
 3/5 A kérdező kommentje:
Rendben, köszönöm a részletes választ! Így már értem!
2018. dec. 10. 20:21
 4/5 anonim ***** válasza:

Mondjuk a kérdésnek az a része még mindig nyitott, hogy mi a különbség a prototípus és az ősosztály között. A válaszból nekem az jön le, hogy semmi, ami megtévesztő lehet.

[link]

2018. dec. 14. 09:54
Hasznos számodra ez a válasz?
 5/5 anonim ***** válasza:
#4 Az osztályok, mint olyan néhány éve kerültek be a JS-be, és alacsony szinten ugyanúgy a prototípusos szerkezetre vezetődnek vissza, csupán azért lettek bevezetve a nyelvbe, hogy az ismert OOP konvenciók szerint lehessen JS-ben fejleszteni, mert a prototype hasnálata és működése egy OOP-n nevelkedett embernek idegen tud lenni. Lényegében ennyi, ugyanarra vannak, csak az egyik az 'eredeti' szerkezet, a másik pedig az OOP-s sugarcoating rajta.
2018. dec. 14. 22:39
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!