DEV Community 👩‍💻👨‍💻

Ali Nurdin
Ali Nurdin

Posted on

Higher Order Function di Javascript

Higher Order Function singkat kata adalah sebuah function yang memiliki function sebagai argument-nya ataupun function sebagai nilai return dari function tersebut.

Function yang menjadi argument atau nilai return dari sebuah Higher Order function disebut callback function.

Mungkin tanpa sadari, ada beberapa higher order function yang pernah teman-teman pakai, contohnya beberapa function array seperti find, filter dan banyak lagi.

Find adalah sebuah function array yang mengembalikan sebuah nilai yang sudah ditentukan.

Contoh penerapan find:

const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
const number = numbers.find(number => number >= 5 // 5 adalah nilai yang ingin dicari)
console.log(number) // menampilkan angka 5
Enter fullscreen mode Exit fullscreen mode

Script diatas menunjukan bagaimana cara kita mencari angka 5 dari array numbers yang berisi angka dari 1 sampai dengan 10. nilai hasil pencarian tersebut nantinya di assign ke konstanta number dan lalu ditampilkan menggunakan console.log.

Lalu bagaimana jika nilai yang dicari tidak ada? maka secara otomatis callback akan me-return undefined.

Contoh lain dari higher order function yaitu filter. Filter akan memilah nilai yang ditentukan lalu dikembalikan menjadi sebuah array baru.

Contoh penerapan filter:

const numbers = [1, 23, 21, 51, 43, 2, 54, 34]
const newNumbers = numbers.filter((number) => number > 40)
console.log(newNumbers) // [ 51, 43, 54 ]
Enter fullscreen mode Exit fullscreen mode

Array numbers berisi nilai acak. Dalam contoh ini, kita ingin mencari nilai lebih dari sama dengan 40 dari array numbers. Hasil pencarian tersebut akan menghasilkan array baru newNumbers yang berisi [ 51, 43, 54 ].

Berikut pengertian dari higher order function, contoh penerapannya dan function-function yang termasuk higher order function.

terima kasih sudah membaca.

Top comments (0)

This post blew up on DEV in 2020:

js visualized

🚀⚙️ JavaScript Visualized: the JavaScript Engine

As JavaScript devs, we usually don't have to deal with compilers ourselves. However, it's definitely good to know the basics of the JavaScript engine and see how it handles our human-friendly JS code, and turns it into something machines understand! 🥳

Happy coding!