Apa itu First Class Function ?

First Class Function

Sebuah objek disebut sebagai first-class function apabila memenuhi syarat berikut :
  • mendukung anonymous function atau function yang tidak memiliki definisi nama.
  • mendukung pengiriman function sebagai argumen dari function lain. 
  • function sebagai nilai kembalian dari function lain.
  • menyimpan function sebagai variable atau dalam struktur data lainnya.

Contoh Penggunaan pada Javascript

Berikut adalah contoh kode penerapan first class function pada javascript beserta hasil eksekusinya.

Anonymous Function

anonymous_function.html

<html> <head> <title>Anonymous Function</title> </head> <body>     <script type="text/javascript">     (function (x) {         alert(x);         return x;     })     ("Memanggil anonymous function !");     </script> </body> </html>


Function sebagai Variable

variable_function.html

<html> <head> <title>Variable Function</title> </head> <body> <script type="text/javascript"> function kuadrat(x) { x = x * x; return x; } var fungsikuadrat = kuadrat; alert(fungsikuadrat(3)); </script> </body> </html>

atau

variable_function.html

<html> <head> <title>Variable Function</title> </head> <body> <script type="text/javascript"> var fungsikuadrat = function (x) { x = x * x; return x; }; alert(fungsikuadrat(3)); </script> </body> </html>


Function sebagai Nilai Kembalian Function Lain

returning_function.html

<html> <head> <title>Function as Returning Value</title> </head> <body> <script type="text/javascript">     function toggle() {         document.write("Ini function toggle! <BR />");         return function() {             document.write("Ini returning anonymous function dari toogle! <BR />");             return toggle();         };     }; document.write("Eksekusi Pertama<BR />"); document.write("================<BR />"); var hasil = toggle(); document.write("<BR/>Eksekusi Kedua<BR />"); document.write("==============<BR />"); hasil = hasil(); </script> </body> </html>


Function sebagai Argumen

argument_function.html

<html> <head> <title>Function as Argument</title> </head> <body> <script type="text/javascript"> var myArray = [3, 6, 'halo', 'internet']; myArray.forEach( function(item, index){ document.write('isi dari array pada posisi ke : ' + index + ' adalah : ' + item + "<BR />"); }); </script> </body> </html>


Sumber Referensi

Comments