标签:工作方式 变量 重要 单线程 nbsp 环境 提前 代码块 未定义
执行环境是js最为重要的一个概念。执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为。
全局执行环境就是最外围的一个执行环境,每一个函数都有自己的作用域
简单的说局部作用域可以访问外部作用域,外部作用域不能访问局部作用域
这里涉及到一个js解析器的工作方式
预解析:
首先: 他会在所在的执行环境找一些东西,比如var function 参数 所有变量在正式运行代码之前都提前赋予一个未定义,所有函数在未正式运行之前都是一个代码块
遇到重名的只会留一个,变量和函数重名只会留下函数,函数和函数重名只会留下后面哪一个
然后:逐行解读代码
域:script全局变量 全局函数,只要是一个域那么就会有预解析,然后执行,js是单线程,自上而下
函数 {}json 局部域
预解析从里到外,作用域链
标签:工作方式 变量 重要 单线程 nbsp 环境 提前 代码块 未定义
原文地址:http://www.cnblogs.com/llcMite/p/6229643.html