Basic Class
TypeScript sama seperti ECMA Script 6 (ES6), support object-oriented programing (OOP). Class sendiri adalah sebuah blueprint atau rancangan untuk membuat objek dengan properti dan metode tertentu. Class dapat digunakan untuk membuat objek dengan karakteristik dan perilaku yang serupa.
Dalam class, kita dapat menentukan properti atau variabel yang dimiliki oleh objek dan metode atau fungsi yang dapat dijalankan pada objek. Class juga dapat memiliki constructor, yang digunakan untuk menginisialisasi properti ketika sebuah objek dibuat.
Berikut contoh sederhana class di TypeScript:
// Sample class Animal
class Animal {
name:string;
foot:number;
constructor(name: string,foot:number){
this.name = name;
this.foot = foot;
}
printAnimal(){
console.log(`Animal name ${this.name} number of animal legs ${this.foot}`)
}
}
let tiger = new Animal("Tiger",4);
tiger.printAnimal();
let chicken = new Animal("Chicken",2);
chicken.printAnimal();
$ ts-node Animal.ts
Animal name Tiger number of animal legs 4
Animal name Chicken number of animal legs 2
Pada contoh diatas kita membuat sebuah class dengan nama class Animal dimana classs yang memiliki properti nama dan kaki selain itu class Animal juga memiliki function/methode printAnimal(), dimana function ini akan digunakan untuk mecetak nama dan jumlah kaki dari animal. Classs Animal ini adalah Blueprint dimana dengan class ini kemudian kita membuat object Tiger. Object tiger di buat instance dari class Animal dimana ketika kita membuat object tiger kita mengirim paramater ke contructor Animal yaiu name = “Tiger” dan foot = 4, selain tiger kita juga membuat object Chicken dengan nama=”Chicken” dan foot=2. Jadi dengan satu class Animal kita bisa membuat beberapa object lainnya dengan paramater yang berbeda.
Contructors
Contructor adalah sebuah method khusus yang dieksekusi ketika sebuah instance objek dibuat dari class. Constructor digunakan untuk menginisialisasi nilai properti dalam objek yang dibuat. Dalam sebuah class, constructor dapat dideklarasikan dengan menggunakan keyword “constructor”
Contoh pengunaan Contructor di TypeScript :
class Animal {
name:string;
foot:number;
constructor(name: string,foot:number){
this.name = name;
this.foot = foot;
}
printAnimal(){
console.log(`Animal name ${this.name} number of animal legs ${this.foot}`)
}
}
Atau kita bisa juga membuat contructor lebih sederhana seperti berikut :
class Animal {
constructor(public name: string,public foot:number){
this.name = name;
this.foot = foot;
}
printAnimal(){
console.log(`Animal name ${this.name} number of animal legs ${this.foot}`)
}
}
Source code tutorial Typescript tersedia di github typescript-days