Skop JavaScript
Dalam JavaScript, objek dan fungsi juga pembolehubah.
Dalam JavaScript, skop ialah koleksi pembolehubah, objek dan fungsi yang boleh diakses.
Skop fungsi JavaScript: Skop diubah suai dalam fungsi.
Dalam JavaScript, pembolehubah yang diisytiharkan dengan var sebenarnya mempunyai skop.
Jika pembolehubah diisytiharkan di dalam badan fungsi, skop pembolehubah ialah keseluruhan badan fungsi dan pembolehubah tidak boleh dirujuk di luar badan fungsi:
'gunakan ketat '; function foo () {
var x = 1;
x = x + 1;
}
x = x + 2; // ReferenceError! 🎜> di luar badan fungsi
'use strict';function foo() { var x = 1 ;
x = x + 1;
}bar fungsi() {
var x = 'A';
x = x + 'B';
}
// Pembolehubah carName tidak boleh dipanggil di sini
function myFunction() {
var carName = "Volvo";
// Pembolehubah carName boleh dipanggil dalam fungsi
}
Nota:
Oleh kerana pembolehubah tempatan hanya bertindak dalam fungsi, fungsi yang berbeza boleh menggunakan pembolehubah dengan nama yang sama. Pembolehubah setempat dicipta apabila fungsi mula dilaksanakan, dan ia akan dimusnahkan secara automatik selepas fungsi tersebut dilaksanakan.Skop global
Pembolehubah yang tidak ditakrifkan dalam mana-mana fungsi mempunyai skop global. Sebenarnya, JavaScript mempunyai tetingkap objek global secara lalai, dan pembolehubah dalam skop global sebenarnya terikat pada sifat tetingkap:
'gunakan ketat';
var course = 'Learn JavaScript';
alert(course); // 'Learn JavaScript'
alert(window. course); // 'Belajar JavaScript'
Oleh itu, mengakses terus kursus pembolehubah global adalah sama seperti mengakses window.course.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <p>全局变量在任何脚本和函数内均可访问。</p> <p id="demo"></p> <script> var carName = "Volvo"; myFunction(); function myFunction() { document.getElementById("demo").innerHTML = "这里是 " + carName; } </script> </body> </html>
Kitaran hayat pembolehubah JavaScript
Kitaran hayat pembolehubah JavaScript dimulakan apabila ia diisytiharkan.
Pembolehubah setempat dimusnahkan selepas fungsi dilaksanakan.
Pembolehubah global dimusnahkan selepas halaman ditutup.
Parameter fungsi
Parameter fungsi hanya berfungsi dalam fungsi dan merupakan pembolehubah setempat.