博客
关于我
JS中的预编译,如何进行这种行为?
阅读量:71 次
发布时间:2019-02-26

本文共 1774 字,大约阅读时间需要 5 分钟。

??

???????????????????????????????????????JavaScript??????????????????????????JavaScript?????????????????????????????????JavaScript??????????????

??

??????????????????

??parse??

1. ??????????????token?? 2. ????token?????????AST????????

??analyze??

3. ????????????????????????scope???????????????????????undefined????????????????????????????????????????????????????????????????

???????

????????????????????

var a = 100  function foo(){      console.log(a);  }  foo()

????????a???100? ?????100?????a?

??????????????????????????????????????????????

1. ???????Global Object?GO?? 2. ???????Activation Object?AO??

??????

1. ??????     a. ??GO???     b. ???????var a???GO??????????undefined?     c. ???????function foo(){})??GO??????????????
2. ??????     a. ??AO???     b. ????????????AO??????????undefined?     c. ?????????????????AO????

?????????????????

?????????GO????var a?function foo()???????undefined???var a = 100??a????100?????foo???????AO????????????????????????GO?????????100???

?????????????????????????????????????????????????????????

global = 100  function fn() {      console.log(global);      global = 200;      console.log(global);      var global = 300  }  fn()

?????????????????

?????????

1. GO????????????? - global: undefined ? ????100? - fn: ???? 2. ??global = 100??100????GO??global??? 3. ??fn??????AO??? - AO????????????????????GO???????? - ???console.log(global)??GO??global???100? 4. ??????global = 200????AO??global??????200? 5. ???console.log(global)??AO??global???200? 6. ??var global = 300?????AO??global????????300? 7. ??????????AO????????global??????????

??????? - ???console.log??100? - ???console.log??200? - ???console.log??????????300?

????????????????JavaScript???????????????????????????????????????????????????????????????JavaScript????????

转载地址:http://nkbz.baihongyu.com/

你可能感兴趣的文章
php后台的在控制器中就可以实现阅读数增加
查看>>
php命令行生成项目结构
查看>>
php命名空间
查看>>
PHP命名空间带来的干扰
查看>>
PHP和MySQL Web开发从新手到高手,第1天-搭建PHP开发环境
查看>>
php商店管理系统,基于PHP的商店管理系统.doc
查看>>
PHP四大主流框架的优缺点总结
查看>>
PHP图片处理—PNG透明缩放并生成灰图
查看>>
php在liunx系统中设置777权限不起作用解决方法
查看>>
PHP基于openssl实现的非对称加密操作
查看>>
php基本符号大全
查看>>
php基础篇-二维数组排序 array_multisort
查看>>
php基础配置环境变量
查看>>
php增删改查封装方法
查看>>
springboot之jar包Linux后台启动部署及滚动日志查看且日志输出至文件保存(超级详细)
查看>>
php多条件筛选功能的实现
查看>>
php多线程
查看>>
PHP大数组循环-避免产生Notice或者是Warning
查看>>
PHP大数组过滤元素、修改元素性能分析
查看>>
PHP大文件切片下载代码
查看>>