作用域决定了这些变量的可访问性(可见性)。
局部作用域:
变量在函数内部声明为局部变量,局部变量有局部作用域,局部变量只作用于函数内。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> <body> <p>局部变量在声明的函数外不可以访问。</p> <p id="demo"></p> <script> myFunction(); document.getElementById("demo").innerHTML = "carName 的类型是:" + typeof carName; function myFunction() { var carName = "Volvo"; } </script> </body> </html>
输出:
局部变量在声明的函数外不可以访问。 carName 的类型是:undefined
不同的函数可以使用相同名称的变量,它只能在函数内部访问。局部变量在函数开始执行时创建,函数执行完成后局部变量会自动销毁。
函数内部定义的变量从函数外部是不可访问的(不可见的)。
全局作用域:
变量在函数外定义为全局变量,全局变量有局作用域:网页中的所有脚本和函数均可使用。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> <body> <p>全局变量在任何脚本和函数内均可访问。</p> <p id="demo"></p> <script> var carName = "Volvo"; myFunction(); function myFunction() { document.getElementById("demo").innerHTML = "我可以显示 " + carName; } </script> </body> </html>
输出:
全局变量在任何脚本和函数内均可访问。 我可以显示 Volvo
注:若变量在函数内部没有声明(未使用var关键字),该变量为全局变量。
以上就是javascript作用域是什么的详细内容,更多请关注易知道|edz.cc其它相关文章!