< JavaScript

Objektum Orientáltan ES6

Szerző: Sallai András

Copyright © Sallai András,2021

Licenc: CC Attribution-Share Alike 4.0 International

Web: https://szit.hu

ES6

Az Objektum Orientált programozást az ES6 (ECMAScript 2015)-ban új szintre emelték. Megjelentek a valódi osztálydefiníciók.

Osztály

class Dolgozo { constructor() { this.nev = 'Nagy János'; this.telepules = 'Szolnok'; this.fizetes = 8500000; } } dolgozo = new Dolgozo(); console.log(dolgozo.nev); console.log(dolgozo.telepules); console.log(dolgozo.fizetes)

Öröklés

class Szemely { constructor() { this.nev = 'Nagy János'; this.telepules = 'Szolnok'; } } class Dolgozo extends Szemely { constructor() { super(); this.fizetes = 8500000; } } dolgozo = new Dolgozo(); console.log(dolgozo.nev); console.log(dolgozo.telepules); console.log(dolgozo.fizetes)

A super() hívás kötelező.

Konstruktor és függvények

class Szemely { constructor(nev, telepules) { this.nev = nev; this.telepules = telepules; } } class Dolgozo extends Szemely { constructor(nev, telepules, fizetes) { super(); this.fizetes = fizetes; } lekerFizetes() { return this.fizetes; } } dolgozo = new Dolgozo('Nagy János', 'Szolnok', 8500000); console.log(dolgozo.lekerFizetes());

Privát adattagok

class Szemely { #nev #telepules constructor(nev, telepules) { this.#nev = nev; this.#telepules = telepules; } lekerNev() { return this.#nev; } lekerTelepules() { return this.#telepules } } mari = new Szemely('Nagy János', 'Szolnok'); console.log(mari.lekerNev()); console.log(mari.lekerTelepules());

Kivételek

try { throw new Error('Hiba! valami elromlott'); }catch(e) { console.log(e); }
var num: number = -1; try { if (num <0) throw new Error('Hiba! Negatív szám'); }catch(e) { console.log(e); }

Lásd még

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Public_class_fields (2021)

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Private_class_fields (2021)