作用域:
就是变量起作用的范围 ,或者说js代码执行时,查找变量的范围
函数作用域:
就是函数内声明的变量 只能在函数局部内起作用
全局作用域:
在最外层 整个script标签内都起作用
es6let声明:块级作用域
变量有了块级作用域,所谓块级作用域中的“块”,表示用 一对花括号括起来的一块代码。
不管是全局作用域,还是函数作用域,其实都是块级作用域,无非是大块还是小块的问题。
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/1646840bda51189f3d288a6da94a0fe1.png)
作用域链
当编译器在寻找变量时,先在最近的作用域内找 找不到则在上一级作用域内找 依次类推,直到找到或者找不到为止。这就是作用域链。