Metode JavaScript Function bind () memungkinkan objek meminjam metode dari objek lain tanpa menyalin.
Sintaks dari bind()
metode ini adalah:
func.bind(thisArg, arg1,… argN)
Di sini, func
adalah sebuah fungsi.
bind () Parameter
The bind()
Metode mengambil di:
thisArg
- Nilai yang diberikan sebagaithis
parameter untukfunc
. Ini diabaikan jika fungsi terikat dibuat menggunakan operator baru .arg1,… argN
(opsional) - Argumen untuk menambahkan argumen yang diberikan ke fungsi terikat saat memanggilfunc
.
Catatan:
- Saat menggunakan thisArg di dalam setTimeout, nilai primitif diubah menjadi objek.
- Jika
thisArg
tidak ditentukan, lingkup eksekusi ini diperlakukan sebagaithisArg
.
Kembalikan nilai dari bind ()
- Mengembalikan salinan dari fungsi yang diberikan dengan nilai ini, dan argumen awal (jika disediakan).
Contoh: Menggunakan bind ()
this.x = 1; // "this" here is the global window object in browser const obj = ( x: 100, getX: function () ( return this.x; ), ); console.log(obj.getX()); // 100 const retrieveX = obj.getX; // the function gets invoked at the global scope console.log(retrieveX()); // 1 // Create a new function with 'this' bound to obj // global variable 'x' with obj's property 'x' are two separate entities const boundGetX = retrieveX.bind(obj); console.log(boundGetX()); // 100
Keluaran
100 1 100
Setelah metode dilewatkan di suatu tempat secara terpisah dari objek - this
hilang. Membuat fungsi terikat dari fungsi, menggunakan objek asli, menyelesaikan masalah ini dengan rapi
Bacaan yang Direkomendasikan: JavaScript Function call ()