Dalam JavaScript, konsep "ini" adalah penting untuk memahami cara kaedah beroperasi dalam definisi kelas. Untuk menyelidiki topik ini, mari kita analisa pernyataan bahawa "ini" merujuk kepada kelas invoker dan bukannya objek yang dicipta apabila menggunakan kaedah kelas.
In JavaScript, terdapat empat cara berbeza untuk menggunakan fungsi, setiap satunya menentukan bagaimana "ini". terikat:
Dalam contoh kod anda, anda menyebut kaedah dalam definisi kelas yang mencipta beberapa objek menggunakan tatatanda literal objek. Dalam objek ini, penunjuk "ini" digunakan. Tingkah laku yang anda perhatikan mungkin berpunca daripada corak seruan kaedah onRender.
Jika kaedah onRender anda digunakan sebagai kaedah contoh kelas (seruan kaedah), "ini" akan merujuk kepada tika kelas, seperti adalah tingkah laku yang diingini. Walau bagaimanapun, jika onRender secara tidak sengaja digunakan sebagai fungsi (penggunaan fungsi) di luar konteks contoh kelas, "ini" akan mengikat objek global dan bukannya contoh kelas yang dimaksudkan. Ini mungkin membawa kepada tingkah laku yang tidak dijangka.
Pengikatan "ini" pada objek atau fungsi invoker ialah aspek asas reka bentuk JavaScript. Ia membolehkan penciptaan kod dinamik dan fleksibel di mana konteks "ini" boleh dimanipulasi bergantung pada corak penyembahan.
Tingkah laku "ini" dalam kaedah kelas ialah hasil daripada corak seruan fungsi JavaScript. Dengan memahami cara "ini" terikat dalam pelbagai senario, anda boleh mengawal konteks kod anda beroperasi dan mengelakkan kemungkinan kekeliruan.
Atas ialah kandungan terperinci Bagaimanakah 'ini' Berkelakuan Di Dalam Kaedah Kelas JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!