理解 JavaScript 作用域
JavaScript作用域
任何程序设计语言都有作用域的概念,简单的说:作用域就是变量与函数的可访问范围,即作用域控制着变量与函数的可见性和生命周期。在JavaScript中,变量的作用域有全局作用域和局部作用域两种。
- 全局作用域(Global Scope)在代码中任何地方都能访问到的对象拥有全局作用域
- 最外层函数和在最外层函数外面定义的变量拥有全局作用域,例如:
|
|
- 所有末定义直接赋值的变量自动声明为拥有全局作用域,例如:
|
|
变量blogName拥有全局作用域,而authorName在函数外部无法访问到。
- 所有window对象的属性拥有全局作用域,一般情况下,window对象的内置属性都拥有全局作用域,例如window.name、window.location、window.top等等。