js作用域
Posted llc-Mite
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js作用域相关的知识,希望对你有一定的参考价值。
执行环境是js最为重要的一个概念。执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为。
全局执行环境就是最外围的一个执行环境,每一个函数都有自己的作用域
简单的说局部作用域可以访问外部作用域,外部作用域不能访问局部作用域
这里涉及到一个js解析器的工作方式
预解析:
首先: 他会在所在的执行环境找一些东西,比如var function 参数 所有变量在正式运行代码之前都提前赋予一个未定义,所有函数在未正式运行之前都是一个代码块
遇到重名的只会留一个,变量和函数重名只会留下函数,函数和函数重名只会留下后面哪一个
然后:逐行解读代码
域:script全局变量 全局函数,只要是一个域那么就会有预解析,然后执行,js是单线程,自上而下
函数 {}json 局部域
预解析从里到外,作用域链
以上是关于js作用域的主要内容,如果未能解决你的问题,请参考以下文章