js全局作用域与局部作用域

237 阅读1分钟

javascript的作用域可以分为:全局作用域局部作用域

全局作用域:默认认为js所构成的区域称为全局作用域。而则是写在函数外部的变量我们称之为全局变量

局部作用域:函数内部都是局部作用域,也称作函数作用域,写在函数内部的变量我们称为局部变量

全局变量是可以被所有局部变量所访问的,相反全局变量是无权访问局部变量,同一作用域下, 里层的局部作用域可以访问外层的局部变量,反之不行,即越靠里面作用域用权限越大

4-1.png

从上图代码中可以分析:

  1. a为全局变量,因此函数test 与 函数 demo 在局部都可以访问到全局变量a;
  2. c为最里层 函数demo的局部变量,在图中,只有自己能够访问变量c,所以函数test是不可能访问到变量c的,因此会报错,系统提示c 没有被定义