一、变量作用域

变量作用域指的是变量的作用范围,javascript中的变量分为全局变量和局部变量

1、全局变量:在函数之外定义的变量,为整个页面公用,函数的内部外部都可以访问。

2、局部变量:在函数内部定义的变量,只能在定义该变量的函数内部访问,外部无法访问。函数内部访问变量时,先在内部查找是否有此变量,如果有,就使用内部,如果没有,就去外部查找

JS变量作用域、闭包

JS变量作用域、闭包


、闭包

闭包就是函数嵌套函数,内部函数可以引用外部函数的参数和变量,参数和变量不会被垃圾回收机制收回。

 JS变量作用域、闭包

如下面例子

这段代码有以下两个特点:

     1函数b嵌套在函数a内部;2、函数a返回函数b;

引用关系如下图:

         JS变量作用域、闭包

闭包就是能够读取其他函数内部变量的函数。

1、闭包用途1:将一个变量长期驻扎在内存当中,可用于循环中存索引值

 JS变量作用域、闭包

2、闭包用途2:私有变量计数器,外部无法访问,避免全局变量的污染

JS变量作用域、闭包


相关文章:

  • 2021-09-29
  • 2021-10-26
  • 2022-12-23
  • 2021-10-12
  • 2022-12-23
  • 2021-08-17
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-02-18
  • 2022-12-23
  • 2021-12-03
  • 2021-11-16
  • 2022-12-23
  • 2021-09-25
相关资源
相似解决方案