JavaScript匿名函数

JavaScript匿名函数

ID:45054128

大小:790.00 KB

页数:23页

时间:2019-11-08

JavaScript匿名函数_第1页
JavaScript匿名函数_第2页
JavaScript匿名函数_第3页
JavaScript匿名函数_第4页
JavaScript匿名函数_第5页
资源描述:

《JavaScript匿名函数》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、主讲人:赵兵日期:2013.06.23远光软件股份有限公司JavaScript(匿名函数)匿名函数的应用递归闭包模仿块级作用域私有变量匿名函数匿名函数:没有名字的函数。(lambda)函数区别:匿名函数在代码执行到那一行才有定义。递归递归函数:函数通过名字调用自身。arguments.callee:指向正在执行的函数的指针。闭包闭包:是指有权访问另一个函数作用域中变量的函数。外部函数中的变量propertyName被内部函数访问。理解作用域链创建compare函数时:创建一个预先包含全局变量对象的作用域链,被保存在内

2、部的[[Scope]]属性中。调用compare函数时:为函数创建一个活动对象,并被推入执行环境作用域链的前端。(函数执行完毕后,会被销毁)理解作用域链10resultcomparethiswindowundefinedvalue1argumentsthiswindow[5,10]5value210compare[[Scope]]ScopeChainGlobalScopeCompareScope全局变量对象本地活动对象闭包的作用域链createFunction[[Scope]][[Scope]]10ScopeChai

3、n21ScopeChain(anonymous)0resultthiswindowundefinedGlobalScopepropertyNameargumentsthiswindow[“name”]“name”createFunctionScopeobject1argumentsthiswindow[]undefined(anonymous)Scopeobject2undefinedcreateFunction闭包的作用域链//解除对匿名函数的引用(以便释放内存)compareNames=null;闭包与变量闭包与

4、变量this对象this对象模仿块级作用域JavaScript没有块级作用域的概念。模仿块级作用域匿名函数模仿块级作用域。私有变量任何在函数中定义的变量,都可以认为是私有变量。缺点:每个实例都会创建同样一组新方法。静态私有变量区别:私有作用域中定义由实例共享的私有变量或函数,且特权方法定义于原型之上。模块模式模块模式:为单例创建私有变量和特权方法。单例:只有一个实例的对象。JavaScript以对象字面量的方式来创建单例对象:模块模式模块模式通过为单例添加私有变量和特权方法能够使其得到增强。模块模式这种模式在需要对单

5、例进行某些初始化,同时又需要维护其私有变量时是非常有用的。增强的模块模式这种模式适合单例必须是某种类型的实例。谢谢!版权声明远光软件股份有限公司拥有本套模版的版权及最终解释权,没有远光软件股份有限公司的特别许可,任何人不能以任何形式或为任何目的复制或传播本文档的任何部分。本文档中包含的信息如有更改,恕不另行通知。由远光软件股份有限公司所销售的某些软件产品包含有其它软件供应商版权所有的软件组件。Microsoft®、WINDOWS®、NT®、EXCEL®、Word®、PowerPoint®和SQLServer®是微软公

6、司的注册商标。IBM®、DB2®、DB2通用数据库、OS/2®、ParallelSysplex®、MVS/ESA、AIX®、S/390®、AS/400®、OS/390®、OS/400®、iSeries、pSeries、xSeries、zSeries、z/OS、AFP、IntelligentMiner、WebSphere®、Netfinity®、Tivoli®、Informix和Informix®动态ServerTM是IBM公司在美国或其他公司的商标。ORACLE®是ORACLE公司的注册商标。UNIX®、X/Open

7、®、OSF/1®和Motif®是OpenGroup的注册商标。本文档提到的所有其它产品和服务名称是它们各自公司的商标。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。