JS的解析与执行——全局预处理命名冲突解决策略与执行
来源:互联网 发布:javascript location 编辑:程序博客网 时间:2024/05/22 08:19
在预处理阶段,如果函数声明有冲突,会覆盖。如果变量声明有冲突,会忽略。例如:
<!doctype html><html><head><meta charset="utf-8"><title>全局预处理命名冲突解决策略与执行</title></head><body><script>foo();console.log(a);function foo(){ console.log("foo1");}function foo(){ console.log("foo2");}var foo = 5566;var a =5;var a =7;console.log(a);</script></body></html>
预处理阶段与执行阶段词法环境对比,代码如下:
<!doctype html><html><head><meta charset="utf-8"><title>全局预处理与执行阶段对比</title></head><body><script>console.log(a);console.log(foo);console.log(g);var a = 5;function foo(){ console.log("foo.log");}var g=function(){ console.log("g.log");}console.log(a);console.log(foo);console.log(g);</script></body></html>
Lexical Environment{
a:undefined
foo:对函数的一个引用
g:undefined
}
执行阶段:
Lexical Environment{
a:5
foo:对函数的一个引用
g:对函数的一个引用
}
阅读全文
0 0
- JS的解析与执行——全局预处理命名冲突解决策略与执行
- JS的解析与执行——全局预处理
- Js的全局预处理、解析与执行
- JS的解析与执行——函数预处理与执行
- 1.全局预处理与执行
- js的解析与执行过程
- JS 的解析与执行过程
- JS的解析与执行过程
- JS-1-解析与执行
- 2.函数预处理与执行
- 【JS与CSS文件导入与执行冲突】
- 去年的webkit的js解析与执行
- JavaScript的解析与执行
- js加载与执行机制解析
- JS脚本解析与执行顺序
- 在JS中如果函数名与变量名冲突,JS是怎么执行的?
- java 文件命名与执行
- JS----执行与装载
- ROC和AUC评价指标说明
- mybatis使用mapper代理的方式操作数据库
- JavaScript基础(6.Dom间接选择器)
- 记忆网络之Dynamic Memory Networks模型介绍及代码实现
- ARM内核和架构都是什么意思,它们到底是什么关系?
- JS的解析与执行——全局预处理命名冲突解决策略与执行
- 奇葩保险花样多,花样营销只为曝光量
- ShaderWeaver使用教程-文字闪烁
- 2017-12-11(docker挂载本地目录到容器)
- Java Spring MVC入门(五)——依赖注入之理论
- 欢迎使用CSDN-markdown编辑器
- 简洁实现RecyclerView上拉加载
- Python中的heapq模块
- 测试图片