W programowaniu obiektowym klasa jest rozszerzalnym szablonem kodu programu do tworzenia obiektów. o klasach można myśleć przede wszystkim jako o cukierku składniowym w stosunku do istniejącego dziedziczenia opartego na prototypach JavaScript. W tym artykule zagłębimy się w klasę JavaScript i nauczymy się ich używać w następującej kolejności:
Co to jest klasa JavaScript?
W JavaScript klasa jest typem funkcji i jest deklarowana za pomocą słowa kluczowego class. Musisz użyć składni wyrażenia funkcji, aby zainicjować funkcję i składnię wyrażenia klasy, aby zainicjować klasę.
// Inicjalizacja funkcji za pomocą wyrażenia funkcyjnego const a = function () {}
// Inicjalizacja klasy za pomocą wyrażenia klasy const b = class {}
W JavaScript, zamiast używać funkcji słowa kluczowego do jej zainicjowania, używamy słowa kluczowego class. Ponadto właściwości są przypisywane wewnątrz metody konstruktora ().
Jak używać klasy JavaScript?
Kod zadeklarowany za pomocą funkcjonować i klasa zwracają funkcję [[Prototype]]. W przypadku prototypów każda funkcja może stać się instancją konstruktora przy użyciu słowa kluczowego new. Na przykład:
const a = class {} // Inicjalizacja konstruktora z klasy const constructorFromClass = new a () console.log (constructorFromClass)
Wynik:
konstruktor {}: klasa
Istnieją trzy różne sposoby używania klasy w JavaScript. Przejdźmy do szczegółów każdej metody na przykładzie.
Zdefiniuj klasę
Funkcja konstruktora jest inicjowana z szeregiem parametrów, które są przypisywane jako właściwości 'to' , odnosząc się do samej funkcji. Zgodnie z konwencją pierwsza litera identyfikatora jest pisana wielką literą.
// Inicjalizacja funkcji konstruktora pracownik (imię, nazwisko) {this.name = name this.empid = empid}
Teraz, jeśli przetłumaczymy to na składnię klasy, zobaczysz, że struktury są bardzo podobne.
// Inicjalizacja definicji klasy class worker {constructor (name, empid) {this.name = name this.empid = empid}}
Można powiedzieć, że słowo kluczowe class komunikuje się w prostszy sposób. Jedyną różnicą w składni inicjalizacji jest użycie słowa kluczowego class zamiast function. Ponadto przypisuje właściwości wewnątrz metody constructor ().
Zdefiniuj metody
Inną powszechną praktyką związaną z funkcjami konstruktora jest przypisywanie metody bezpośrednio do prototypu zamiast podczas inicjalizacji. Weźmy przykład i zobaczymy, jak to działa:
function worker (name, empid) {this.name = name this.empid = empid} // Dodanie metody do konstruktora Employer.prototype.greet = function () {return `$ {this.name} mówi cześć.`}
Kiedy piszesz ten sam kod z klasą, jest to uproszczone, a metoda jest dodawana bezpośrednio.
class worker {constructor (name, empid) {this.name = name this.empid = empid} // Dodanie metody do konstruktora greet () {return `$ {this.name} mówi cześć.`}}
Chociaż klasy pozwalają na prostszą i zwięzłą składnię, czasami może być konieczne pójście na kompromis z przejrzystością procesu.
Rozszerzanie klasy
Zaletą funkcji i klas konstruktorów jest to, że można je rozszerzyć do nowych projektów obiektów na podstawie rodzica. Pomaga to w zapobieganiu powtarzaniu się kodu w przypadku obiektów, które są podobne, ale wymagają dodatkowych lub bardziej szczegółowych funkcji.
Nowe funkcje konstruktora można utworzyć z rodzica za pomocą metody call (). Na przykład:
// Tworzenie nowego konstruktora na podstawie funkcji nadrzędnej info (name, empid, salary) {// Konstruktor łańcuchowy z call worker.call (this, name, empid) this.salary = salary}
Teraz, kiedy piszemy ten sam kod przy użyciu class, słowo kluczowe super jest używane zamiast wywołania, aby uzyskać dostęp do funkcji nadrzędnych.
jak przekonwertować double na int java
// Tworzenie nowej klasy z klasy nadrzędnej info extends worker {constructor (name, empid, salary) {// Chain constructor with super super (name, empid) // Add a new property this.salary = salary}}
Zajęcia zapewniają bardziej zwięzły sposób tworzenia obiekt plany i funkcje konstruktora opisują to, co dzieje się pod maską w bardziej szczegółowy sposób.
W ten sposób dotarliśmy do końca naszego artykułu. Mam nadzieję, że zrozumiałeś, jak używać klasy JavaScript.
Teraz, gdy wiesz już o klasie JavaScript, zapoznaj się z przez Edureka. Szkolenie z zakresu certyfikacji w zakresie rozwoju sieci pomoże Ci nauczyć się, jak tworzyć imponujące strony internetowe przy użyciu HTML5, CSS3, Twitter Bootstrap 3, jQuery i interfejsów API Google oraz wdrażać je w usłudze Amazon Simple Storage Service (S3).
Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy w „klasie JavaScript”, a my skontaktujemy się z Tobą.