Какво е JavaScript клас и как да го използвам?



Класът е разширяем шаблон на програмен код за създаване на обекти. Javascript класът е тип функция и се декларира с ключовата дума class.

При обектно-ориентираното програмиране клас е разширяем шаблон на програмен код за създаване на обекти. класовете могат да се разглеждат предимно като синтактична захар над съществуващото наследство, базирано на прототип на JavaScript. В тази статия ще вникнем в дълбочината на класа на JavaScript и ще научим как да ги използваме в следната последователност:

Какво е JavaScript клас?

В JavaScript класът е вид функция и се декларира с ключовата дума class. Трябва да използвате синтаксис на израз на функция, за да инициализирате функция и синтаксис на израз на клас, за да инициализирате клас.





// Инициализиране на функция с израз на функция const a = function () {}
// Инициализиране на клас с израз на класа const b = class {}

В JavaScript, вместо да използваме функцията за ключови думи, за да я инициираме, ние използваме класа на ключовата дума. Също така свойствата се присвояват в конструктор () метод.

Как да използвам JavaScript клас?

Кодът, деклариран с функция и class връщат функция [[Prototype]]. С прототипите всяка функция може да се превърне в конструктор, като използва новата ключова дума. Например:



const a = class {} // Инициализиране на конструктор от клас const constructorFromClass = new a () console.log (constructorFromClass)

Изход:

визуални студийни уроци за начинаещи
{} конструктор: клас

Сега има три различни начина за използване на клас в JavaScript. Нека да влезем в подробностите на всеки метод с пример.

Определете клас

Функцията конструктор се инициализира с редица параметри, които се присвояват като свойства на 'това' , позовавайки се на самата функция. Първата буква на идентификатора се изписва с главни букви по правило.



// Инициализиране на конструктор функция функция служител (име, empid) {this.name = име this.empid = empid}

Сега, ако преведем това в синтаксиса на класа, ще видите, че структурите са много сходни.

// Инициализиране на служител на клас за дефиниция на клас {конструктор (име, empid) {this.name = name this.empid = empid}}

Можем да кажем, че ключовата дума class комуникира по по-ясен начин. Единствената разлика в синтаксиса на инициализацията е използването на ключовата дума class вместо функция. Също така той присвоява свойствата в конструктор () метод.

Определете методи

Друга често срещана практика с конструкторски функции е да се назначава методи директно към прототипа, вместо в инициализацията. Ще вземем пример и ще видим как работи:

функция служител (име, empid) {this.name = name this.empid = empid} // Добавяне на метод към конструктора worker.prototype.greet = function () {return `$ {this.name} поздравява.`}

Когато пишете един и същ код с клас, той се опростява и методът се добавя директно.

служител в класа {конструктор (име, empid) {this.name = name this.empid = empid} // Добавяне на метод към конструктора greet () {return `$ {this.name} поздравява.`}}

Въпреки че класовете позволяват по-прост и кратък синтаксис, понякога може да се наложи да направите компромис с яснотата в процеса.

Разширяване на клас

Предимството на конструкторските функции и класове е, че те могат да бъдат разширени в нови чертежи на обекти, базирани на родителя. Това помага за предотвратяване на повторение на код за обекти, които са подобни, но се нуждаят от някои допълнителни или по-специфични функции.

Нови функции на конструктора могат да бъдат създадени от родителя, използвайки метода call (). Например:

// Създаване на нов конструктор от информация за родителската функция (име, изпратено, заплата) {// Верижен конструктор с повикване на staff.call (this, name, empid) this.salary = pay}

Сега, когато пишем същия код с клас, ключовата дума super се използва вместо извикване за достъп до родителските функции.

// Създаването на нов клас от информацията за родителския клас разширява служител {конструктор (име, изпратено, заплата) {// Верижен конструктор със супер супер (име, изпратено) // Добавяне на ново свойство this.salary = заплата}}

Класовете ви осигуряват по-кратък начин за създаване обект чертежи и конструкторски функции описват случващото се под капака по по-специфичен начин.

С това стигнахме до края на нашата статия. Надявам се, че сте разбрали как да използвате JavaScript Class.

След като вече знаете за JavaScript Class, разгледайте от Edureka. Обучението за сертифициране на уеб разработки ще ви помогне да научите как да създавате впечатляващи уебсайтове с помощта на HTML5, CSS3, Twitter Bootstrap 3, jQuery и Google API и да го разположите в Amazon Simple Storage Service (S3).

Имате въпрос към нас? Моля, споменете го в раздела за коментари на „JavaScript Class“ и ние ще се свържем с вас.