为了账号安全,请及时绑定邮箱和手机立即绑定

关于javascript的小问题?

关于javascript的小问题?

一只萌萌小番薯 2018-07-13 12:05:00
函数如下:function test(){     var  arr=[ ];      for(var i=0; i<10; i++){          (function(j){              arr[j]=function(){                   document.write(i }( i))}return arr;}const   myArr=test();for(i=0;i<10;i++){       myArr[i]();}这个输出结果是0-9myArr[0];myArr[1];myArr[2];      这个结果都是10    为什么呢?myArr[3];myArr[4];
查看完整描述

1 回答

?
哔哔one

TA贡献1854条经验 获得超8个赞

你可以试着找到下面画红色横线的地方:

然后改成

document.write(j);

……

这个问题涉及到闭包和立即执行函数这两个知识点。


查看完整回答
反对 回复 2018-08-05
  • 1 回答
  • 0 关注
  • 585 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信