TypeScript Functions

Function adalah sebuah block code dalam bahasa programan yang bisa di baca , di rubah dan digunakan berulang kali. Contoh sederhana penulisan function pada bahsa pemograman TypeScript :

//Example Function

function print(){
    console.log('Hello World');
}

//Call function
print();

Function Types

Seperti halnya Javascript pada TypeScript memiliki beberapa tipe function diantaranya :

Function Void

Function dengan tipe void yaitu jenis function yang tidak memiliki nilai kembalian seperti berikut :

function print():void{
    console.log('Hello World');
}

//Call function
print();

Function Return /Non Void

Function tipe ini adalah tipe function yang memiliki nilai kembalian baik type data primitive atau object seperti berikut :

function calculateNumber():number{
    return 10 +10;
}

console.log(`10 + 10 = ${calculateNumber()}`)

Function Parameter

Function tipe ini adalah tipe function yang memiliki nilai parameter, Kita bisa membuat parameter baik dengan tipe data primitive maupun object, berikut contoh :

//Type return
function sumNumber(a:number, b:number):number{
    return a+b;
}

console.log(`A + B = ${sumNumber(10,30)}`)


function message(message:string):string{
    return message;
}

console.log(message('Learning function in TypeScript'))

Function Optional Parameter

Sama halnya dengan tipe parameter ,tipe ini juga bisa menerima parameter baik berupa tipe data primitive maupun object akan tetapi kita bisa membuat parameter bersifat optional yaitu dimana jika kita memiliki 2 parameter atau lebih namun ada parameter yang bersipat optional maka ketika function itu kita panggil, function tersebut dapat dijalankan dan compailer tidak akan melepar kesalahan. Contoh Function dengan Optional parameter :

//Optional param
function messageOptionalParam(message:string,age?:number):any{
    return `Your message is ${message} and my age is ${age}`
}

console.log(messageOptionalParam("Learning TypeScript"))

Disini kita mebuat fucntion dengan 2 parameter akan tetapi hanya satu parameter yang kita masukan.

Function Default Parameter

Hampir sama dengan Function Optional Parameter, akan tetapi pada tipe Function Default Parameter, kita bisa memberikan nilai default pada parameter sehingga ketika parameter tersebut tidak menerima operan, maka dia akan mengunakan nilai default yang telah kita definisikan sebelumnya, Contoh seperti berikut :

function messageDefaultParam(message:string,age:number=20):any{
    return `Your message is ${message} and my age is ${age}`
}

console.log(messageDefaultParam("Learning TypeScript"))

Function Argument Paramater

Function ini bisa menerima paramater dengan jumlah nol atau lebih paramater. Paramater argument berupa tipe data Array[] dan hanya memiliki satu argument. Contoh seperti berikut :

//Function args

function printFruits(...fruits: string[]){
    fruits.forEach(fruit => {
        console.log(`Fruit ${fruit}`)
    });
};

console.log(printFruits('Apple','Banana','Mango','Orange'))

Function Overloading

Function Overloading adalah tipe function dimana pada TypeScript kita diperbolehkan membuat function dengan nama yang sama akan tetapi memilik parameter atau tipe return yang berbeda. Contoh seperti berikut:

// Function overloading

function add(a: number, b: number): number;
function add(a: string, b: string): string;
function add(a: any, b: any): any {
   return a + b;
}

console.log(add(10,10))
console.log(add("Jhon ","Due"));

Semua tipe function di atas penulisan code dapat menggunakan arrow function seperti berikut :

//Arrow Function
const printName = (name:string)=>{
    console.log(`Your name is ${name}`)
}

printName("Jhon Due");

Source code tutorial Typescript tersedia di github typescript-days

hyvercode

The main() function

Semua aplikasi/ program harus memilki top level function main(), Dimana berfungsi sebagai entry point sebuah aplikasi / program. main() function mengembalikan void dan bisa memiliki arguments, tetapi sifatnya optional List<String>.

contoh pemnulisan main() tanya paramater

void main(){
   print("Hello Dart");
}

contoh penulisan main() dengan paramater

void main(List<String> args){
  for(String ar in args){
    print(ar);
  }
}

untuk menjalankan program main() yang memiliki arguments kita bisa menjalankannya dengan perintah dart run <nama_file.dart> <paramater>

$dart run main.dart "Jhon" "Cris"
Jhon
Cris

Sample source code can be downloaded on github at the following link    dart-tutorial

hyvercode