ES6 classlar
Sinflar
ES6 sinflarni joriy qildi.
Class - bu funksiya turi, lekin kalit so‘zni ishlatish o‘rniga
function uni boshlash uchun biz kalit so‘zdan foydalanamiz
class , va xususiyatlar a ichida tayinlangan
constructor() usuli.
Misol
Oddiy class konstruktori:
class Car {
constructor(name) {
this.brand = name;
}
}
Endi siz Car sinfidan foydalanib obyektlar yaratishingiz mumkin:
Misol
Car sinfi asosida "mycar" deb nomlangan obyekt yarating:
class Car {
constructor(name) {
this.brand = name;
}
}
const mycar = new Car("Ford");
Darslarda metod
Siz o‘z usullaringizni sinfga qo‘shishingiz mumkin:
Misol
"present" nomli metod yarating:
class Car {
constructor(name) {
this.brand = name;
}
present() {
return 'I have a ' + this.brand;
}
}
const mycar = new Car("Ford");
mycar.present();
Yuqoridagi misolda ko‘rib turganingizdek, siz obyektning metod nomidan keyin qavslar (parametrlar qavs ichiga kiradi) orqali usulni chaqirasiz.
Class meros
Klass merosini yaratish uchun extends kalit so‘zidan foydalaning.
Class merosi bilan yaratilgan class boshqa sinfdan barcha usullarni meros qilib oladi:
Misol
"Avtomobil" sinfidan usullarni meros qilib oladigan "Model" nomli class yarating:
class Car {
constructor(name) {
this.brand = name;
}
present() {
return 'I have a ' + this.brand;
}
}
class Model extends Car {
constructor(name, mod) {
super(name);
this.model = mod;
}
show() {
return this.present() + ', it is a ' + this.model
}
}
const mycar = new Model("Ford", "Mustang");
mycar.show();
super() usuli ota-klassga tegishli.
Konstruktor usulida super() usulini chaqirish orqali biz ota-onaning konstruktor usulini chaqiramiz va ota-onaning xossalari va usullariga kirish huquqiga ega bo‘lamiz.
Darslar haqida ko‘proq ma’lumot olish uchun JavaScript sinflari bo‘limimizni ko‘rib chiqing.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
