对javascript匿名函数的理解(透彻版)
2010-02-03 00:00:00 来源:WEB开发网核心提示:网上很多解释,我无法理解,对javascript匿名函数的理解(透彻版),我想知道原理,这篇文章应该可以透彻一点Query片段: (function(){//这里忽略jQuery所有实现})();半年前初次接触jQuery的时候,特例是,输入的数据为空或输出的数据为空,我也像其他人一样很兴奋地想看看源码是什么样的,然而
网上很多解释,我无法理解,我想知道原理。这篇文章应该可以透彻一点
Query片段:
(function(){
//这里忽略jQuery所有实现
})();
半年前初次接触jQuery的时候,我也像其他人一样很兴奋地想看看源码是什么样的。然而,在看到源码的第一眼,我就迷糊了。为什么只有一个匿名函数又没看到运行(当然是运行了……),就能有jQuery这么个函数库了?于是,我抱着疑问来到CSDN。结果相信现在很多人都很清楚了(因为在我之后也不乏来者,呵呵~)。当一个匿名函数被括起来,然后再在后面加一个括号,这个匿名函数就能立即运行起来!真神奇哦!
嘿嘿!胡闹到此为止。在这一节,我们碰到的jQuery片段是一组立即运行的匿名函数。而这种用法在论坛上也曾引起过激辩——这段代码究竟属不属于闭包呢?带着这个疑问,我们从基础开始,分析每个关键要素,寻找属于自己的答案。(没错,自己的答案!在我看来,所有理论只是形式,只要它有利于我们的应用实现,就是可取的——黑猫白猫,抓到老鼠的就是好猫!)
要说匿名函数,我们首先要由函数本身说起。函数的定义如下:
函数是将唯一的输出值赋予给每一输入的“法则”。
当然,这只是数学上的定义。但是,在计算机编程语言中,函数的定义也八九不离十。因为,我们都知道,计算机中的函数,也类似数学定义中的描述,它是
将输入的若干数据,经过代码设定的逻辑操作处理后,返回唯一的输出的一组代码组合块。
——当然,特例是,输入的数据为空或输出的数据为空,或者两者都为空。
Tags:javascript 匿名 函数
编辑录入:爽爽 [复制链接] [打 印][]
更多精彩
赞助商链接