作用域
作用域是当前执行的上下文,在那里的值和表达式都是可见的或是可以引用的。如果一个变量或者表达式不在当前的作用域内,那它是不能被使用的。作用域也是有层级的,子作用域是可以访问父作用域的,反之则不行。
JavaScript 有以下几种作用域:
全局作用域:在脚本模式下运行的所有代码的默认作用域
模块作用域:在模块模式下运行的代码的作用域
函数作用域:用函数创建的作用域。函数会创建一个单独的作用域,比如以便在函数内专门定义的变量不能在函数外部访问
块级作用域:用一对花括号
{}
创建的作用域。比如用let
和const
声明的变量就属于块级作用域的
https://developer.mozilla.org/en-US/docs/Glossary/Scope
作用域。对变量起限定作用的程序段落被称为域 scope。事实上,JavaScript 中变量的真正意义上的作用域是运行时的调用栈,而不是静态的语法树。
Last updated