美文网首页
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