URL馒头
2016-04-20 21:13
//第一步把之前的数据写成一个数组的形式,定义变量为 infos var infos=[ ['小A','女',21,'大一'], ['小B','男',23,'大三'], ['小C','男',24,'大四'], ['小D','女',21,'大一'], ['小E','女',22,'大四'], ['小F','男',21,'大一'], ['小G','女',22,'大二'], ['小H','女',20,'大三'], ['小I','女',20,'大一'], ['小J','男',20,'大三'] ]; var arr = new Array(); var n=0; //第一次筛选,找出都是大一的信息 for(var i=0;i<9;i++){ if(infos[i][3]=="大一"){ document.write(infos[i][0]); arr[n++]=infos[i]; } } document.write("<br/>"); //第二次筛选,找出都是女生的信息 for(var i=0;i<arr.length;i++){ if(arr[i][1]=="女"){ document.write(arr[i][0]); } }
问 一下 后面定义的 变量arr和变量n 变量i 之间的关系
首先定义一个二维数组并赋值给infos,以及一个arr空数组,以及一个变量n=0(这个就没啥说的了),第一次循环是筛选出infos数组中含有大一的所有值,注意这里infos是二维数组,而大一是二维数组当中的数组中的一个值,举例infos数组中第一个值是infos[0],而这个值又是个数组['小A','女',21,'大一'],而大一是此数组中的第四个值(索引是3),所以是infos[0][3],那么在这个循环里依次筛选每个infos[i][3],并把含有大一的值赋值到arr数组中,循环结束后,arr数组就包含了所有存在大一的数组(注意此时arr也是二维数组),,,,第二次的循环大同小异了,同样的逻辑来筛选arr数组,是女生的就输出。
第一个循环结束后,arr数组中存放了所有"大一"的男女,第二次输出大一中所有女生的名字
i事用来遍历数组的,n是用来累加统计有多少符合条件的人的
第一个循环结束后,arr数组中存放了所有"大一"的男女,第二次输出大一中所有女生的名字
i事用来遍历数组的,n是用来累加统计有多少符合条件的人的
JavaScript进阶篇
468196 学习 · 21891 问题
相似问题