美文网首页
for循环输出值,学了js几年居然不知道

for循环输出值,学了js几年居然不知道

作者: 秋秋秋web | 来源:发表于2017-05-27 14:37 被阅读23次

    var a = [];

    for(var i =0; i <10; i++) { 

         a[i] =function(){

         return console.log(i)   

    };

    }

    a[1]()

    上面代码输出结果为10;惊呆!不应该是0~10?

    抛开方法,对循环进行输出,居然直接等于10

    解释一下:里面每个a[i]都是一个function,只有调用到才会执行,这里循环相当于只是声明而没有执行,只有最后调用了a函数才执行,而此时i是10

    相关文章

      网友评论

          本文标题:for循环输出值,学了js几年居然不知道

          本文链接:https://www.haomeiwen.com/subject/qmdqfxtx.html