Mengisytiharkan Pembolehubah Global dalam Fungsi JavaScript
Pertanyaan:
Adakah ia layak untuk menentukan global pembolehubah di dalam fungsi JavaScript? Khususnya, saya menyasarkan untuk mengakses pembolehubah trailimage (dimulakan dalam fungsi makeObj) daripada fungsi luaran yang lain.
Penyelesaian:
Tidak seperti bahasa pengaturcaraan lain, pembolehubah global dalam JavaScript tidak boleh ditakrifkan secara langsung dalam fungsi. Walau bagaimanapun, terdapat pelbagai pendekatan untuk mencapai kesan yang sama:
Menggunakan Objek Global:
var yourGlobalVariable; function foo() { // Access yourGlobalVariable }
Menggunakan globalThis/window Objek:
function foo() { globalThis.yourGlobalVariable = ...; }
function foo() { window.yourGlobalVariable = ...; }
Fungsi Skop dan Penutupan:
(function() { var yourGlobalVariable; function foo() { // Access yourGlobalVariable } })();
Menggunakan Modul:
<script type="module"> let yourGlobalVariable = 42; function foo() { // Access yourGlobalVariable } </script>
Cadangan:
Walaupun pembolehubah global boleh berguna dalam senario tertentu, secara amnya disyorkan untuk meminimumkan penggunaannya kerana mereka boleh membuat penamaan perlanggaran dan memperkenalkan cabaran penyelenggaraan. Sebaliknya, pilih teknik pengaturcaraan modular atau gunakan pembolehubah tempatan dalam fungsi apabila boleh.
Atas ialah kandungan terperinci Bolehkah saya Mengisytiharkan Pembolehubah Global Di Dalam Fungsi JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!