js中注册标识符流程
注册分为三个阶段:分别是注册阶段,函数处理阶段,变量处理阶段;这三个阶段有先后顺序的。(注:这三个阶段的名字没有权威性,是作者为了方便记忆自己起的名字)
注册阶段的特征
1.此时不会运行代码
2.检查低级的语法错误
3.注册在当前词法环境中所声明的变量和函数
4.一旦创建了新的词法环境,就会执行这一阶段
函数处理阶段
如果是函数环境(也就是说局部环境):创建形参及函数参数的默认值;然后实参形参相统一。 如果全局环境,就跳过这这一步
接下来是全局环境和函数环境都经历的:将函数声明进行扫描并绑定到当前环境与函数名相同的标识符上。若该标识符已经存在,那么该标识符的值将被重写。(注意此时不会理会函数表达式和箭头函数)
对变量进行处理
若在全局作用域中或者函数作用域中。扫描三种变量 var 、let、const定义的变量。
若是块级作用域:扫描两种变量 let、const定义的变量。对于所查找到的变量,若该标识符不存在,进行注册并将其初始化为undefined。若该标识符已经存在,将保留其值。
转载于:https://www.cnblogs.com/weikemudan/p/11152041.html
js中注册标识符流程相关推荐
- 微信小程序app.js中的全局变量globalData改变,如何通知其它页面界面显示改变,小程序中如何在其他页面中监听到globalData中值的变化
微信小程序app.js中的全局变量globalData改变,如何通知其它页面界面显示改变,小程序中如何在其他页面中监听到globalData中值的变化 在小程序中,我们一般在app.js的onLaun ...
- node.js中公培训笔记大全(讲的一般,小白基础入门)
day01 本阶段的授课内容为 ES6 2天-3天 NodeJS 2天-3天 express 2天-3天 webpack 1天 MySQL数据库 2天 实战项目 2天 今天的授课内容为 1.ES5-严 ...
- nodeJS 中文API node.js 中文文档
Node.js Manual & Documentation Table Of Contents Synopsis 概要 Global Objects 全局对象 global process ...
- node/js 漏洞_6个可用于检查Node.js中漏洞的工具
node/js 漏洞 Vulnerabilities can exist in all products. The larger your software grows, the greater th ...
- node.js中模块_在Node.js中需要模块:您需要知道的一切
node.js中模块 by Samer Buna 通过Samer Buna 在Node.js中需要模块:您需要知道的一切 (Requiring modules in Node.js: Everythi ...
- js 操作vuex数据_Vue.js中使用Vuex实现组件数据共享案例
当组件中没有关联关系时,需要实现数据的传递共享,可以使用Vuex 先不管图片 一.安装 在vue cli3中创建项目时勾选这个组件就可以了 或者手动安装 npm install store --sav ...
- JS中typeof的用法
转载自 JS中typeof的用法 js是一门弱语言,它在声明变量时无需确定变量的类型,js在运行时会自动判断.那么如何判断一个变量的类型呢,js提供了typeof运算符,用来检测一个变量的类型. 1 ...
- node js fork php,Node.js中execFile,spawn,exec和fork简介
Node.js中execFile,spawn,exec和fork简介 Node.js子流程child_process模块提供四种不同方法执行外部应用: 所有这些都是异步,调用这些方法会返回一个对象,这 ...
- Js中Symbol对象
Js中Symbol对象 ES6引入了一种新的基本数据类型Symbol,表示独一无二的值,最大的用法是用来定义对象的唯一属性名,Symbol()函数会返回symbol类型的值,该类型具有静态属性和静态方 ...
最新文章
- 谢文睿:西瓜书 + 南瓜书 吃瓜系列 6. 神经网络
- SAP UI5里sap.m.shell的实现
- [ZZ] 使用rsync来实现快速删除大量文件
- 隐藏该监视器无法显示模式_【春星开讲 | 9137】达芬奇4K调色监看的好伙伴——明基PD2720U专业显示器...
- 谷歌(Google Chrome)插件安装
- 利用Snapshot快速跨Region迁移服务器
- 解决JS文件页面加载时的阻塞
- Object.keys()返回对象自身可枚举属性组成的数组
- 智能路由器自建服务器,路由器怎么设置服务器_路由器搭建服务器
- Domain Adaption1
- Antd表单项根据后端返回字段显示错误的校验提示语
- Hadoop IO 特性详解(1)【数据完整性】
- 美国大学计算机科学专业排名2020,美国大学计算机专业排名2020情况如何?
- 两组数据的偏差率_GWT测试报告 篇七十五:隐患难忽视,RIVAL 3 WIRELESS精准度LOD测试...
- and true和if都是python语言的保留字_python自学 第三章 python语言基础之保留字、标识符与内置函数...
- 计量经济学:多重共线性
- SpringMVC +Spring + MyBatis + Mysql + Redis(作为二级缓存) 配置
- web学习笔记——一个简单的HTML
- 到底死不死我就请了七天假_“你到底死不死啊?我就请了7天假”
- C++:上机练习(C++实现)