DISKON TERBATAS! Masukkan kupon "skillbaru" saat checkout di kelas apa saja

Logo Koala Skodev mengetik

Skodev

Belajar coding dalam bahasa Indonesia

FUNCTION BIND

Memahami Function Bind pada JavaScript serta penggunaan dan contohnya dalam pengembangan web.

Pengenalan ke Function Bind JavaScript

Function Bind merupakan metode yang sangat berguna pada JavaScript, terutama saat bekerja dengan objek dan function. Fungsi ini memungkinkan kita untuk menetapkan konteks this pada nilai yang kita inginkan dan mengembalikan fungsi baru dengan konteks this yang telah ditentukan tersebut.

Apa Itu Function Bind pada JavaScript

Fungsi Bind pada JavaScript adalah metode bawaan (built-in method) yang memungkinkan kita untuk mengubah konteks this yang digunakan di dalam suatu fungsi. Dengan kata lain, ini mengizinkan kita untuk menetapkan apa yang harus menjadi konteks eksekusi (konteks this) dalam suatu fungsi.

Berikut adalah sintaks dari fungsi bind:

var boundFunction = originalFunction.bind(thisArg[, arg1[, arg2[, ...]]])

Di sini, originalFunction adalah fungsi yang ingin kita ubah konteks this-nya.

Contoh Penggunaan Function Bind

Untuk memahami bagaimana Bind bekerja, mari kita lihat contoh berikut:

let obj1 = {
  nama: "Budi",
}

let obj2 = {
  nama: "Andi",
}

function salam() {
  console.log(`Halo, nama saya adalah ${this.nama}`);
}

// Mengubah konteks `this` pada fungsi salam
let boundSalam = salam.bind(obj2);

boundSalam(); // Output: "Halo, nama saya adalah Andi"

Dalam contoh di atas, fungsi salam.bind(obj2) akan mengubah konteks this dari fungsi salam dari obj1 menjadi obj2. Sehingga, ketika kita memanggil boundSalam(), outputnya adalah “Halo, nama saya adalah Andi” dan bukan “Halo, nama saya adalah Budi”.

Function Bind sangat penting dan berguna dalam pengembangan JavaScript, terutama saat bekerja dengan kode berbasis objek dan fungsi di mana kita sering perlu mengubah konteks this. Dengan memahami dan mampu menggunakan fungsi ini, kamu dapat menulis kode yang lebih bersih dan efisien.

👈🏼 Function apply
Apa itu async 👉🏼