- 时间:2020-01-29 10:03 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:深入理解JavaScript系列(4) 立即调用的函数表达式
前言
大家学JavaScript的时候,经常遇到自执行匿名函数的代码,今天我们主要就来想想说一下自执行。
在详细了解这个之前,我们来谈了解一下“自执行”这个叫法,本文对这个功能的叫法也不一定完全对,主要是看个人如何理解,因为有的人说立即调用,有的人说自动执行,所以你完全可以按照你自己的理解来取一个名字,不过我听很多人都叫它为“自执行”,但作者后面说了很多,来说服大家称呼为“立即调用的函数表达式”。
本文英文原文地址:http://benalman.com/news/2010/11/immediately-invoked-function-expression/
什么是自执行?
在JavaScript里,任何function在执行的时候都会创建一个执行上下文,因为为function声明的变量和function有可能只在该function内部,这个上下文,在调用function的时候,提供了一种简单的方式来创建自由变量或私有子function。
[url=http://dmitrysoshnikov.com/ecmascript/chapter-5-functions/#question-about-surrounding-parentheses]ECMA-262-3 in detail. Chapter 5. Functions.[/url] - Dmitry A. Soshnikov
[*][url=https://developer.mozilla.org/en/JavaScript/Reference/Functions_and_function_scope]Functions and function scope[/url] - Mozilla Developer Network
[/*][*][url=http://kangax.github.com/nfe/]Named function expressions[/url] - Juriy “kangax” Zaytsev
[/*][*][url=http://www.cnblogs.com/TomXu/archive/2011/12/30/2288372.html]全面解析Module模式[/url]- Ben Cherry(大叔翻译整理)
[/*][*][url=http://skilldrick.co.uk/2011/04/closures-explained-with-javascript/]Closures explained with JavaScript[/url] - Nick Morgan [/*][/list]