做网站优化选阿里巴巴还是百度,深圳电器公司招聘,做网站交付标准,seo公司排名教程注册分为三个阶段#xff1a;分别是注册阶段#xff0c;函数处理阶段#xff0c;变量处理阶段#xff1b;这三个阶段有先后顺序的。#xff08;注#xff1a;这三个阶段的名字没有权威性#xff0c;是作者为了方便记忆自己起的名字#xff09; 注册阶段的特征 1.此时不…注册分为三个阶段分别是注册阶段函数处理阶段变量处理阶段这三个阶段有先后顺序的。注这三个阶段的名字没有权威性是作者为了方便记忆自己起的名字 注册阶段的特征 1.此时不会运行代码 2.检查低级的语法错误 3.注册在当前词法环境中所声明的变量和函数 4.一旦创建了新的词法环境就会执行这一阶段 函数处理阶段 如果是函数环境也就是说局部环境创建形参及函数参数的默认值然后实参形参相统一。 如果全局环境就跳过这这一步 接下来是全局环境和函数环境都经历的将函数声明进行扫描并绑定到当前环境与函数名相同的标识符上。若该标识符已经存在那么该标识符的值将被重写。注意此时不会理会函数表达式和箭头函数 对变量进行处理 若在全局作用域中或者函数作用域中。扫描三种变量 var 、let、const定义的变量。 若是块级作用域扫描两种变量 let、const定义的变量。对于所查找到的变量若该标识符不存在进行注册并将其初始化为undefined。若该标识符已经存在将保留其值。 转载于:https://www.cnblogs.com/weikemudan/p/11152041.html