⊗jsPmCxUFC 434 of 505 menu

Konteks Fungsi Tidak Terikat dalam JavaScript

Mari kita lihat apa yang akan berlaku jika dalam fungsi kita nyatakan this, tetapi tidak mengikatnya kepada mana-mana elemen, seperti ini:

function func() { console.log(this); } func();

Dalam kes ini, hasilnya bergantung pada sama ada mod ketat digunakan atau tidak. Jika mod tidak ketat, maka this akan menyimpan rujukan kepada window:

function func() { console.log(this); // rujukan kepada objek window } func();

Dan jika mod adalah ketat, maka this akan menyimpan undefined:

"use strict"; function func() { console.log(this); // undefined } func();

Dari apa yang dinyatakan di atas, mungkin kelihatan bahawa dalam mod ketat this akan sentiasa undefined. Tapi jangan terpedaya! Jika kita hanya memaparkan this di luar fungsi, maka ia akan merujuk kepada window tanpa mengira mod:

"use strict"; console.log(this); // dalam this ada rujukan kepada window

Kesimpulan

Dalam mana-mana fungsi, kita boleh menulis this, ini tidak akan menyebabkan sebarang ralat JavaScript. Namun, apa sebenarnya yang akan terkandung dalam this ini tidak ditentukan sehingga saat fungsi dipanggil. Malah, bagi panggilan fungsi yang berbeza, this boleh menerima nilai yang berbeza. Semuanya bergantung pada konteks di mana fungsi tersebut dipanggil.

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