kembali ke pelajaran

Ikat fungsi sebagai sebuah metode

Apakah keluarannya?

function f() { alert( this ); // ? } let user = { g: f.bind(null) }; user.g();

Jawabannya: null.

function f() { alert( this ); // null } let user = { g: f.bind(null) }; user.g();

Konteks dari pengikatan fungsi sangat sulit diperbaiki. Tidak ada cara untuk merubahnya dilain waktu.

Jadi bahkan ketika kita menjalankan user.g(), fungsi aslinya dipanggil dengan this=null.