Cobalah menjalankan kode berikut:
function MyClass()
{
this.m_name = "my name";
}
MyClass.prototype.printMyName = function()
{
Log(this.m_name);
return true;
}
function main() {
var myobj = new MyClass();
myobj.printMyName();
_C(myobj.printMyName);
}
Hasil cetak adalah:
Ketika _C ((myobj.printMyName) dipanggil, this dalam fungsi tidak menunjuk ke objek myobj. Bagaimana cara mengatasi masalah ini?
Penemu Kuantitas - Mimpi Kecil` ` fungsi MyClass (() { var sendiri = {} self.m_name = "Nama saya" Aku tidak tahu. self.printMyName = fungsi () { Log ((self.m_name) Kembali benar {\cH00FFFF} Aku tidak tahu. kembali diri {\cH00FFFF} Fungsi utama var myobj = MyClass (() myobj.printMyName (() _C ((myobj.printMyName) {\cH00FFFF} ` `
Penemu Kuantitas - Mimpi KecilPenyebabnya adalah setelah myobj.printMyName dikirim ke _C, this pointer menunjuk ke.
pencahayaanTerima kasih!