全局函数的作用域和执行环境
来源:互联网 发布:网络开发项目管理课程 编辑:程序博客网 时间:2024/06/06 20:48
function f(){ var a=1; aa=function(){//全局函数,前面如果加一个var那就是局部函数了 a+=1; } function bb(){ alert(a); } return bb;}var f1=f();//得到返回值bbf1();//1aa();f1();//2
此题中,aa函数是全局函数(因为前面没有var),可以直接在全局中被调用,并且它能访问f中的局部变量a,为什么?因为函数运行在定义它的环境中,而非调用它的环境中。对于aa来说,定义它的环境是f,调用它的环境是window。全局函数是说函数在任何作用域都可以被调用,也就是说它在全局任何一个角落都可以被访问,在任何角落都是有效的。但是当你在全局任何一个角落调用全局函数时,全局函数还是会回到定义它的作用域中,从那里开始沿着作用域链向上搜索各级执行环境,直到找到所需标识符为止。
阅读全文
0 0
- 全局函数的作用域和执行环境
- 函数的执行环境和作用域
- 执行环境和作用域
- 执行环境和作用域
- js 函数的执行环境和作用域链的深入解析
- 初识JavaScript的执行环境、作用域链、函数和闭包
- javascript的执行环境和作用域的理解
- 16.js的执行环境和作用域
- 变量的执行环境和作用域2
- javascript中作用域链和执行环境的理解
- JavaScript的执行环境和变量作用域
- javascript中执行环境和作用域链的概率
- 让eval()全局作用域执行的方法深入研究
- javascript:执行环境与作用域链以及函数执行
- 执行环境和作用域链
- 浅谈执行环境和作用域
- JavaScript作用域和执行环境
- 执行环境和作用域链
- Linux 查看服务列表命令
- Bootstrap框架的分析
- axure不能另存为问题处理
- liunx运行项目注意事项
- HDU2519 新生晚会【组合计算】
- 全局函数的作用域和执行环境
- Object类
- 解决Segmentor: Model not loaded!
- rdp协议介绍
- Android Studio null value in entry: sourceOutputDir=null
- AndroidManifest.xml
- 基于离散元的对流传热模拟方法探索初步
- EFI/UEFI BIOS 入门
- c# sqladapter 与sqldataReader