日期:2014-05-16  浏览次数:20376 次

深入理解JavaScript的变量作用域

  • 1、JavaScript的作用域链
  • 2、函数体内部,局部变量的优先级比同名的全局变量高。
  • 3、JavaScript没有块级作用域。
  • 4、函数中声明的变量在整个函数中都有定义。
  • 5、未使用var关键字定义的变量都是全局变量。
  • 6、全局变量都是window对象的属性

在学习JavaScript的变量作用域之前,我们应当明确几点:

  • JavaScript的变量作用域是基于其特有的作用域链的。
  • JavaScript没有块级作用域。
  • 函数中声明的变量在整个函数中都有定义。

1、JavaScript的作用域链

首先看下下面这段代码:

view plaincopy to clipboardprint?
  1. <script?type="text/javascript">??