js 作用域

js 作用域主要有:全局作用域和局部作用域,es5之前没有块级作用域,es6有了块级作用域

何为块级作用域,块级作用域和局部作用域直接的区别是什么?

局部作用域是函数里面声明的变量,因为声明的变量用var声明,var有变量提升的原因,导致变量在函数内部子函数都处处可见。

块作用域由 { } 包括,if语句和for语句里面的{ }也属于块作用域。块级作用域在变量离开定义的块级代码后应该马上被回收。

if(true){

      var a = 5

}

console.log(a) // 5  可以访问到a


if(true){

      let  b = 5

}

console.log(b) // 报错

所以,es6之后有了块级作用域的概念

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容