码迷,mamicode.com
首页 > Web开发 > 详细

js 闭包

时间:2015-10-21 13:56:00      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:

今天看了高程,其中有一段代码讲到闭包


           

function createFunctions(){
                var result = new Array();
                
                for (var i=0; i < 10; i++){
                    result[i] = function(){
                        return i;
                    };
                }
                
                return result;
            }

var funcs = createFunctions();
            
            //every function outputs 10
            for (var i=0; i < funcs.length; i++){
                document.write(funcs[i]() + "<br />");
            }

最后在得出的数组运行之后,数组中所有数字均为10,这是因为闭包中的i只会取它的最后一个值10,所以在闭包中i就为10了。

最后运行结果为

10

10

10

10

10

10

10

10

10

10

 

js 闭包

标签:

原文地址:http://www.cnblogs.com/yymblog/p/4897446.html

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