Sub Class di JavaScript
Sub Class di JavaScript

Sub Class di JavaScript – JavaScript ES6 #13

0 Shares
0
0
0

Sub Class di JavaScript

Pada ES6 kita bisa membuat sebuah sub class yang merupakan turunan dari sebuah class tertentu dengan cara yang lebih mudah.

Class yang pertama menurunkan property dan method untuk class yang akan diturunkan darinya umumnya disebut dengan parent class.

Sedangkan class yang menjadi class turunan dari sebuah class tertentu disebut biasa disebut child class atau sub class.

Biasanya kita menurunkan method dari sebuah object untuk object yang lain dengan mengatur prototype dari sebuah object turunan, seperti pada potongan code berikut:

var Person = function (nama, tahunLahir) {
    this.nama = nama;
    this.tahunLahir = tahunLahir;
}

Person.prototype.hitungUmur = function () {
    var umur = new Date().getFullYear() - this.tahunLahir;
    console.log(umur);
}

var Programmer = function (nama, tahunLahir, bhsPemrogramman) {
    Person.call(this, nama, tahunLahir);
    this.bhsPemrogramman = bhsPemrogramman;
}

Programmer.prototype = Object.create(Person.prototype);

var yaumil = new Person('Yaumil', 1998, 'JavaScript');

Pada potongan kode diatas kita membuat agar “Programmer” mewariskan method dari “Person” dengan mengatur prototype “Person” juga menjadi protoype dari “Programmer”.

Cara Membuat Sub Class di JavaScript

Pada ES6,kita bisa mewariskan method dari sebuah class ke class yang lain (sub class) dengan cara yang lebih mudah, dengan menggunakan keyword “extend”.

Dari contoh yang sama diatas, untuk mewariskan method dari class “Person” ke class “Programmer”, kita bisa melakukannya dengan cara berikut:

class Person {

    constructor(nama, tahunLahir) {
        this.nama = nama;
        this.tahunLahir = tahunLahir;
    }

    hitungUmur() {
        let umur = new Date().getFullYear() – this.tahunLahir;
    }

}

class Programmer {

    constructor(nama, tahunLahir, bshPemrogramman) {
        super(nama, tahunLahir);
        this.bhsPemrogramman = bhsPemrogramman;
    }

    hitungUmur() {
        let umur = new Date().getFullYear() – this.tahunLahir;
    }

}

let yaumil = new Person('Yaumil', 1998, 'JavaScript');


Cara ini sama persis dengan cara yang kita lakukan pada potongan kode sebelumnya. Untuk mengujinya, kamu bisa membandingkan dua buah objek tersebut melalui developer tool dan kamu akan melihat prototype chain dari dua buah objek tersebut sama persis.

0 Shares
Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

You May Also Like