Reagovat ES6 Classes


Třídy

ES6 představil třídy.

Třída je typ funkce, ale místo použití klíčového slova functionk jejímu spuštění používáme klíčové slovo classa vlastnosti jsou přiřazeny uvnitř constructor()metody.

Příklad

Jednoduchý konstruktor třídy:

class Car {
  constructor(name) {
    this.brand = name;
  }
}

Všimněte si velikosti písmen v názvu třídy. Název „Auto“ jsme začali velkým písmenem. Toto je standardní konvence pojmenování tříd.

Nyní můžete vytvářet objekty pomocí třídy Car:

Příklad

Vytvořte objekt s názvem „mycar“ na základě třídy Car:

class Car {
  constructor(name) {
    this.brand = name;
  }
}

const mycar = new Car("Ford");

Poznámka: Funkce konstruktoru je volána automaticky při inicializaci objektu.


w3schools CERTIFIED . 2022

Získejte certifikaci!

Dokončete moduly React, proveďte cvičení, udělejte zkoušku a získejte certifikaci w3schools!!

95 $ PŘIHLÁSIT SE

Metoda ve třídách

Do třídy můžete přidat své vlastní metody:

Příklad

Vytvořte metodu s názvem „prezentovat“:

class Car {
  constructor(name) {
    this.brand = name;
  }
  
  present() {
    return 'I have a ' + this.brand;
  }
}

const mycar = new Car("Ford");
mycar.present();

Jak můžete vidět v příkladu výše, metodu zavoláte odkazem na název metody objektu následovaný závorkami (parametry by byly uvnitř závorek).


Třídní dědičnost

Chcete-li vytvořit dědičnost třídy, použijte extends klíčové slovo.

Třída vytvořená pomocí dědičnosti třídy dědí všechny metody z jiné třídy:

Příklad

Vytvořte třídu s názvem „Model“, která zdědí metody ze třídy „Car“:

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();

Metoda super()odkazuje na nadřazenou třídu.

Voláním super()metody v metodě konstruktoru zavoláme metodu konstruktoru rodiče a získáme přístup k vlastnostem a metodám rodiče.

Chcete-li se dozvědět více o třídách, podívejte se do naší sekce Třídy JavaScriptu .