码迷,mamicode.com
首页 > 其他好文 > 详细

内部函数 解析

时间:2014-09-02 15:57:55      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:javascript   内部函数   执行   闭包   

<span style="font-size:18px;">function outerFn(){
document.write("outer");
var i=0;
function innerFn(){
document.write("inner");
i++;
document.write(i);
}
return innerFn;
}
 //要想使用inner()这个内部函数,不可以在outerFn()外部,直接引用</span><span style="font-size:18px;">outerFn()</span><span style="font-size:18px;">
//</span><span style="font-size:18px;">outerFn()</span><span style="font-size:18px;">;是错误的
</span><span style="font-size:18px;">
var innerObj=outerFn(); //将outerFn()返回的函数变量赋给innerObj
</span><pre name="code" class="javascript"><span style="font-size:18px;">innerObj();//调用一次内部函数</span><span style="font-size:18px;">outerFn</span><span style="font-size:18px;">()
</span><pre name="code" class="javascript"><span style="font-size:18px;">innerObj();</span><span style="font-size:18px;">//第二次调用内部函数</span><span style="font-size:18px;">outerFn</span><span style="font-size:18px;">()</span><span style="font-size:18px;"></span>



最近在研究闭包和作用域链。很多概念还看不到,现在还不是总结的时候。

上面的那个函数式经常被闭包及相关知识解释的例子,之前看不到,后来明白了,赶紧来总结此部分。

innerFn()是outerFn()的内部函数,要执行此内部函数,直接在outerFn()外应用innerFn()是不行的。

以上的例子是通过父函数的返回值来获得内部函数的引用,进而执行内部函数。



内部函数 解析

标签:javascript   内部函数   执行   闭包   

原文地址:http://blog.csdn.net/yuxuan89814/article/details/39005955

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!