2018-08-03

js作用域和作用域链

 什么是作用域

     ⼀个变量的作⽤域是程序源代码中定义这个变量的区域。对象, 函数也是变量。作用域有全局作用域和局部作用域。

 全局作用域

   全局对象下的属性作用域为全局,即网页中的所有脚本和函数均可使用。

局部作用域

  函数作用域:在函数内部定义

  es6块作用域:{}形成一个作用域

作用域链

   作用域的嵌套形成一个作用域链。

    变量的查找过程,是在当前作用域查找, 找不到则顺着作用域链逐级查找,直到最外层全局作用域为止。

作用域链的形成

   function foo(a) {

      var b = a;

     return a + b;

   }

   foo(2); 


2018-08-03_第1张图片

你可能感兴趣的:(2018-08-03)