Functional Programming JavaScript

Pengertian Functional Programming

Pemrograman Fungsional adalah cara pemrograman yang berdasarkan teori fungsi matematika, dimana proses komputasi diperlakukan sebagai  evaluasi fungsi-fungsi matematika.  Cara pemrograman fungsional bisa menjadikan program lebih ekpresif (menggunakan koding lebih sedikit untuk mengimplementasikan sesuatu ide) sehingga programer dapat menjadi lebih produktif.

Bahasa pemrograman fungsional yang paling banyak digunakan oleh yaitu Javascript. Mula-mula Javascript yang diciptakan oleh Netscape bertujuan melengkapi bahasa Java pada pemrograman web dengan menarik untuk programmer nonprofesional pada pemrograman sisi client, sehingga sintaks Javascript banyak diambil dari bahasa C dan juga menyamar seolah-olah sebagai bahasa prosedural sampai programmer siap untuk pindah ke tingkat berikutnya yaitu pemrograman fungsional. Sebenarnya prinsip-prinsip desain kunci dalam JavaScript diambil dari bahasa pemrograman Self dan Scheme, yang bukan lain adalah bahasa pemrograman fungsional. Sehingga tanpa memahami paradigma fungsional ini, banyak programmer akan gagal memahami script yang ditulis dalam bahasa Javascript dengan baik.

  1. Procedural Functions

Procedural Function

  1. Function as Variables

Function As Variables

  1. Passing Functions To Function

Passing Function

Fungsi, dalam Javascript, adalah juga sekaligus sebuah objek. Sehingga selain memiliki fungsi sendiri, maka juga Anda memiliki objek fungsi,  yang berarti  memiliki metode dan properti sebagai objek, yang selanjutnya dapat diperluas oleh programmer sesuai kebutuhan.

Setiap fungsi memiliki properti berikut:

  • Arguments – Sebuah array / objek yang mengandung argumen dilewatkan ke fungsi
  • Alength – menyimpan sejumlah argumen dalam array
  • Acallee – pointer ke fungsi pelaksana (memungkinkan fungsi anonim untuk rekursi).
  • Constructor – fungsi pointer ke fungsi konstruktor.
  • Length – jumlah argumen fungsi
  • Prototype – memungkinkan penciptaan prototipe

Setiap fungsi memiliki metode berikut:

  • Apply – sebuah metode yang memungkinkan Anda lebih easilly melewati argumen fungsi.
  • Call – memungkinkan Anda untuk memanggil fungsi dalam konteks yang berbeda.
  • ToSource – mengembalikan kode sumber dari sebuah objek.
  • ToString – mengembalikan sumber fungsi sebagai string.
  • ValueOf – Mengembalikan nilai primitif dari objek Boolean

Leave a Reply

Your email address will not be published. Required fields are marked *