Rumah > Soal Jawab > teks badan
Lihat gambar yang saya ambil untuk butiran
PHP中文网2017-06-21 09:38:13
<script> var bar=function(){ var foo=function(){} foo=10; } var foo=1; bar(); alert(foo); </script>
Bahagian pengisytiharan js diletakkan di atas, dan foo di dalam fungsi ialah pembolehubah setempat dan tidak menjejaskan foo global.
ringa_lee2017-06-21 09:37:34
1 Perisytiharan fungsi akan berada di bahagian atas
2 Perisytiharan pembolehubah juga akan berada di bahagian atas
3 Perisytiharan fungsi akan berada di bahagian atas daripada perisytiharan pembolehubah:)
4 Pembolehubah dan penyataan tugasan ditulis bersama apabila dihuraikan oleh enjin js , ia akan dibahagikan kepada dua bahagian: pengisytiharan dan tugasan , pengisytiharan berada di bahagian atas, dan tugasan kekal pada kedudukan asal
5Pembolehubah yang diisytiharkan tidak akan diisytiharkan berulang kali
Jika anda merujuk kepada perkara di atas, anda akan faham. sebabnya!
Kesan sebenar kod anda ialah:
function bar(){ function foo(){} var foo;//实际上无效 foo=10; } var foo; bar(); foo=1; console.log(foo);