问答详情
源自:4-10 编程练习

关于数组的问题

if(infos[i][3] === "大一" && infos[i][1] === "女")    这个怎么理解呢?????

提问者:慕妹0692581 2016-06-26 15:22

个回答

  • Cloudnueve
    2016-06-26 15:50:05
    已采纳

    infos[i]代表所要筛选的总共10位同学中的第(i+1)位同学,infos[i][3]和infos[i][1]分别指其中第(i+1)位同学的年级信息和性别信息,利用for循环和if判断可逐一筛选出所有人的信息并选取符合既是大一又是女生的同学

  • 云林雨
    2016-06-26 16:48:16

    你之前建立了一个二维数组,即数组里的每个变量本身也是一个数组:infos[[‘a',  '1',  '!'],  ['b',  '2',  '@']]

    然后使用循环语句:  for(var i=0;i<=infors.length-1;i++),目的是为了遍历数组infos,第一次获得infos[0]的值也就是[‘男',  '1',  '大一'] ,第一次获得infos[1]的值也就是['女',  '2',  '大一']

    接着使用条件语句if(infos[i][3] === "大一" && infos[i][1] === "女") 判断if值为true还是flase,第一次循环内容为“大一”且“男”不满足条件值为flase,第二次循环内容为“大一”且“女”满足条件值为true。


  • 妙言
    2016-06-26 16:12:43

    可以这样理解,一个数组相当于是一个盒子,里面可以放了10个盒子(同学),每个盒子(同学)里又放了四个盒子(分别放了姓名,性别,年龄和年级),所以这10个同学的信息是一个二维数组info[i][j]。第一维i就是同学的序号,第二维j就是每个同学的详细信息,如infos[0][0]就是第一个同学的第一项信息即姓名,所以infos[0][0]='小A'。

    回到你的问题:infos[i][3]=='大一',就是第i个同学的第4项信息是大一,infos[i][1]=='女',就是第i同学的第2项信息是女,i是循环的,这样就是找出满足大一女生条件的同学。