Sunday, July 22, 2012

Function

Function dalam bahasa kita adalah fungsi, fungsi digunakan untuk menetapkan dan meng-compile kode-kode JavaScript. Di dalam fungsi dapat ditetapkan lebih dari satu perintah yang dapat dijalankan secara bersamaan ketika fungsi itu dipanggil.

Objek Function adalah objek standard JavaScript 1.0+, JScript 1.0+, ECMAScript 1.0+ dan didukung Google Chrome Beta+, Firefox 1.0 (Gecko 1.7)+, Internet Explorer 3+, Netscape Navigator 2.0+, Opera 3.0+, Safari 1.0+.

Sintaks:

var functionName = new Function(param1, ..., paramN, bodyFunction);
  • functionName digunakan untuk menetapkan nama fungsi.
  • param1, ..., paramN (opsional) digunakan untuk menetapkan banyaknya parameter.
  • bodyFunction digunakan untuk menetapkan banyaknya perintah.

Untuk memanggil fungsi di dalam program, anda cukup menuliskan nama fungsi lalu diikuti dengan tanda (), dan jangan lupa menuliskan parameternya di dalam tanda (), jika memang ada.

Contoh di bawah ini membuat fungsi bernama foo tanpa dengan parameter. Fungsi foo() digunakan untuk mengembalikan nilai hasil perkalian 10 dengan 10:

var foo = new Function("return 10 * 10"); alert(foo()); // 100

Akan sama fungsi di atas jika anda menuliskannya seperti di bawah, dengan menggunakan statemen function:

function foo() { return 10 * 10; } alert(foo()); // 100

Akan sama juga jika anda menuliskannya seperti di bawah ini:

var foo = function() { return 10 * 10; } alert(foo()); // 100

Contoh di bawah ini membuat fungsi bernama foo dengan satu parameter. Fungsi foo() digunakan untuk mengembalikan nilai hasil perkalian x dengan x:

var foo = new Function("x", "return x * x"); alert(foo(10)); // 100

Akan sama fungsi di atas jika anda menuliskannya seperti di bawah, dengan menggunakan statemen function:

function foo(x) { return x * x; } alert(foo(10)); // 100

Akan sama juga jika anda menuliskannya seperti di bawah ini:

var foo = function(x) { return x * x; } alert(foo(10)); // 100

Terlepas dari contoh-contoh di atas, sebenarnya anda dapat membuat fungsi yang memang kinerjanya lebih canggih dibandingkan hanya untuk mengembalikan hasil dari suatu operasi perkalian.