⊗jsOpBsInr 1 of 60 menu

Въведение в класове и обекти в JavaScript

Сега ще се заемем с изучаването на ООП в JavaScript. Нека разгледаме пример от живота, а след това го пренесем в JavaScript.

Като пример вземаме автомобил. Той има колела, цвят, вид купе, обем на двигателя и така нататък. Освен това, шофьорът може да му дава команди: да тръгне, да спре, да завие надясно, наляво и т.н.

Може да се каже, че съществува определен клас автомобили, притежаващ общи свойства (всички имат колела и на всички тях може да се дават команди).

Конкретният автомобил, стоящ на улицата - това е представител на този клас, или, с други думи, обект от този клас. Всички обекти от този клас имат свойства: брой колела, цвят, вид купе и методи: да тръгне, да спре, да завие надясно, наляво.

С други думи самият клас - това е чертеж, по който във фабриката се правят автомобили. Обектът обаче - това е самата кола, направена по тези чертежи.

В JavaScript клас се създава с помощта на ключовата дума class, следвана от името на този клас. Нека направим клас Car:

class Car { // тук код, тоест JavaScript-чертеж на автомобил }

Нека сега укажем в нашия чертеж, че всеки автомобил, създаден по този чертеж, ще има свойство за цвят и свойство за количество гориво.

За това вътре в класа ще напишем свойство color и свойство fuel:

class Car { color; // цвят на автомобила fuel; // количество гориво }

Нека сега направим методите на нашия клас. В JavaScript методите приличат на обикновени функции, само че се декларират без ключовата дума function.

Както вече беше споменато по-горе, нашият автомобил може да тръгва, може да завива, може да спира. Нека направим съответните методи в нашия клас:

class Car { color; // цвят на автомобила fuel; // количество гориво // Команда да тръгне: go() { // някакъв JavaScript код } // Команда да завие: turn() { // някакъв JavaScript код } // Команда да спре: stop() { // някакъв JavaScript код } }

Ние с вас направихме чертежа на нашия автомобил. Сега трябва да отидем във фабриката и да направим обект от този клас (тоест конкретен автомобил).

В JavaScript това се прави с помощта на ключовата дума new, след която се пише името на класа:

new Car; // командуваме на фабриката да направи автомобил

Въпреки това, ако просто се създаде обект от класа - това няма да доведе до нищо (това е все едно, например, да декларираме масив и да не го запишем никъде). На нас ни трябва променлива за съхранение на този обект.

Нека тази променлива се казва myCar - ще запишем в нея създадения от нас обект:

let myCar = new Car;

След като се създаде автомобилът, може да се осъществява достъп до неговите свойства. Достъпът до тях се осъществява чрез точка. Нека зададем свойствата на нашия обект:

let myCar = new Car; // командуваме на фабриката да направи автомобил myCar.color = 'red'; // боядисваме в червен цвят myCar.fuel = 50; // зареждаме гориво

Всичко, нашият автомобил е създаден, боядисан и зареден с гориво. Сега можем да му даваме команди чрез методите на този автомобил.

Достъпът до методите също се осъществява чрез точка, но, за разлика от свойството, след името на метода следва да се пишат кръгли скоби. Нека даваме команди на нашия обект:

myCar.go(); myCar.turn(); myCar.stop();
Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне