Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jsOpAdMCL 43 of 60 menu
◀ ▶

Kehilangan Konteks dalam Kod Kaedah dalam OOP di JavaScript

Apabila menggunakan kod sumber kaedah kelas, konteks boleh hilang. Mari kita lihat contoh. Katakan kita mempunyai kelas berikut:

class User { #name; constructor(name) { this.#name = name; } getName() { return this.#name; } }

Mari buat objek kelas ini:

let user = new User('john');

Mari catat kod kaedah ke dalam pembolehubah:

let func = user.getName;

Pada saat mencatat kaedah ke dalam pembolehubah, konteks telah hilang. Sekarang this di dalam kod kaedah tidak akan menunjuk kepada objek kelas. Mari kita semak, panggil fungsi kami:

console.log(func()); // ralat

Untuk menyelesaikan masalah ini, kita boleh mengikat konteks kepada fungsi, contohnya, melalui bind:

func = func.bind(user); console.log(func()); // berfungsi
← →
↑
Melayu▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak