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

求大神讲解下,这段代码!!!

求大神讲解下,这段代码!!!

七彩泡 2017-01-04 16:02:44
 问题是:挑出其中所有是大一的女生的的名字代码如下: var infos =  [    ['小A','女',21,'大一'],['小B','男',23,'大三'],['小C','男',24,'大四'],['小D','女',21,'大一'],['小E','女',22,'大四'],   ['小F','男',21,'大一'],['小G','女',22,'大二'],['小H','女',20,'大三'],['小I','女',20,'大一'],['小J','男',20,'大三']  ];//第一次筛选,找出都是大一的信息   var arr1 = []; var n = 0; for(var i=0;i<infos.length;i++){  if( infos[i][3] == "大一" ){     arr1[n] = infos[i];    document.write(arr1[n]+"<br/>");   n=n+1;}     } document.write("大一人数: "+arr1.length+"<br/>");  //第二次筛选,找出都是女生的信息    for(var i=0;i<arr1.length;i++){  if(arr1[i][1]=='女') { document.write(arr1[i][0]+"<br/>");} }  
查看完整描述

1 回答

已采纳
?
落寞回头不如华丽转身

TA贡献11条经验 获得超4个赞

首先 infos  是一个二维数组, 这点先明确一下, 然后第一个循环 是找到所有事大一的学生,  因为 所有的数据都存在 下标为3的位置, 所以是infos[i][3] , 如果符合条件,就把数据存放到 arr1 数组中去,  方便第二次筛选,  第二个循环的意思 就是从  arr1中 找到都是女生 也就是下标为1的数据,  符合条件 输出即可 , 二维数组, 你可以当做是一个表格的形式  , 不懂 欢迎继续提问

查看完整回答
反对 回复 2017-01-04
  • 七彩泡
    七彩泡
    能再解释下:第一次筛选时,大括号里面的代码吗?感谢感谢 if( infos[i][3] == "大一" ){ arr1[n] = infos[i]; document.write(arr1[n]+"<br/>"); n=n+1; }
  • 落寞回头不如华丽转身
    落寞回头不如华丽转身
    因为大一的数据是存放在下标为3的位置, 所以 是 infos[i][3] 是否等于大一;如果相等 就存放到 arr1中去, n的作用 是改变arr1中的下标 ,方便根据下标来进行 设置数据的操作
  • 七彩泡
    七彩泡
    明白了,O(∩_∩)O
  • 1 回答
  • 0 关注
  • 830 浏览
慕课专栏
更多

添加回答

举报

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