clase javascript
În lecția, ne vom uita la modul de a scrie clase în ECMAScript 6.
Lasă-mă mai întâi foarte scurt repeta ce clase sunt necesare. De foarte multe ori avem nevoie pentru a descrie unele entități care au un fel de date, și poate folosi orice metode care determina comportamentul lor. În acest scop, vom descrie clasa, și de fiecare dată când primești o nouă clasă de inițializare ekzemplyar. În același timp, ne-am numit cu siguranta constructorul clasei
Deoarece descrierea clasei arata utilizarea claselor EC6?
utilizând clasa cuvânt, am descris o nouă clasă. Am adăugat, de asemenea, o metodă constructor care acceptă un an, luna, ziua, și le scrie în acest sens. Am creat o variabilă astăzi, care este o SimpleDate clasa ekzemplyarom.
Să adăugați o metodă toString, care va reveni data în format uman
Acum ekzemplyara metoda toString clasa a apărut, provocând că vom obține o dată concluzie frumos.
De asemenea, putem folosi moștenirea în clase folosind cuvântul extinde. Să creăm o clasă OtherDate, care va fi moștenită de SimpleDate.
Pentru a efectua constructor de clasă părinte, vom folosi metoda super-și să o transmită argumente. Super este folosit pentru a obraschatsya la clasa părinte.
După cum puteți vedea, am numit constructor părinte și, de asemenea, avem acces la toate metodele de clasa părinte. Acesta este motivul pentru care toString încărcăm
Să ne metoda toString acum peopredelim la alte terminale
Nu cred că clasele din EC6 este un fel de magie. Dacă ne uităm la ceea ce SimpleDate de clasă, putem vedea că este doar o funcție
Ie clase crea funcții regulate cu moștenire prototip. Dar nu se poate apela clasa direct, în funcție de
Am aruncat eroarea
de ce clasele nu pot fi numite în mod direct.
După ce a descris metoda toString vom descrie o metodă de prototip
De asemenea, clase pot fi adăugate în plus față de metodele din stadiul tehnicii, metode statice. Ele sunt o metodă de clasă, mai degrabă decât metodele prototip.
Dacă vom scrie clasa metoda OtherDate salut
Apoi putem numi folosind OtherDate.hello (). În stadiul tehnicii nu este disponibilă.