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

弱弱的问一下arr[n]=infos[i];n++; 这两行代码的原理。

 var arr=new Array();
 var n=0;
 for(var i=0;i<infos.length;i++)
 {
     if(infos[i][3]=='大一')
     {
        document.write(infos[i]+"<br>")
     arr[n]=infos[i];
     n++;
     }
 }//第一次筛选,找出都是大一的信息

本人新手,跟着课程学到这的,没有基础。大家的答案中其他都懂,就这一句不是很理解,在第一个for循环中为什么要这样写,在之前本章的课程里也没有写过,所以想问一下原理。这两句为什么不能在第二个for开头写?

【个人理解】在我自己做本节的作业的时候,第一个筛选的代码很顺利敲完并实现,在做第二个筛选的时候怎么也不会,想着如何就可以把第一个筛选出来的内容放在一个变量里,再进行条件筛选就可以了,但怎么也不对。我想我提问的问题是不是就是解决了这个问题?所以想弄清楚,这样写的原理是什么?n在这里也没有限制条件,arr[n]以及n++可以自己运行吗?

正在回答

2 回答

不是很清楚你的意思!!

arr[n]=infos[i]; n++;

相当于把查询出是大一是数据存放在 arr数组里面,但是arr数组里面的下标的值,是通过n的变化进行进行定下标,

0 回复 有任何疑惑可以回复我~
#1

丶小奋 提问者

我自己又理解了半天,根据你的回答你看是不是这个意思? 这个arr应该是新定义的数组用来存放筛选好的(大一的信息) n++是跟着i一起动态赋值的,如果不写n++,那么arr这个变量里面存放的内容只有一个?
2017-01-08 回复 有任何疑惑可以回复我~
#2

小江子 回复 丶小奋 提问者

是的 就是那个意识, 如果没有n++ 他的下标没有改变,每次添加的值都是那个位置,所以到后面存的是最后一个值, 有点像猴子搬玉米
2017-01-08 回复 有任何疑惑可以回复我~
#3

丶小奋 提问者

非常感谢!
2017-01-09 回复 有任何疑惑可以回复我~

是的 就是那个意识, 如果没有n++  他的下标没有改变,每次添加的值都是那个位置,所以到后面存的是最后一个值, 有点像猴子搬玉米

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

弱弱的问一下arr[n]=infos[i];n++; 这两行代码的原理。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信