求大神讲解一下这一段的二维数组的意思

来源:4-10 编程练习

慕粉1859536052

2017-03-31 16:31

for (var i =0;i<infos.length;i++){

     if(infos[i][3] == "大一" && infos[i][1] == "女"){

         document.write(infos[i][0]+"<br/>");

     }

 }


二维数组一直不太明白,求大神讲解一下

写回答 关注

6回答

  • SHANG_Yitong
    2017-03-31 16:55:36
    已采纳

    二维数组可以理解为元素在一个平面上,推之一维在一条直线上,三维在一个立体中。

    第一行代码说的是从循环从第一行开始,到最后一行结束;

    第二行代码说的是每行数组只检测第4个元素是不是大一,第2个元素是不是女,如果都是的话才进入第三行代码

    第三行代码说的是如果符合第二行代码的检测标准,就输出这一行的第1个元素,也就是姓名。

    这样,我们就把问题解决了。

    慕粉1859...

    哦哦!结合全部代码看懂了!谢谢!

    2017-03-31 16:58:55

    共 1 条回复 >

  • 慕粉1859536052
    2017-03-31 17:25:32

    可以这样理解吗?

    f(infos[i][3] == "大一" && infos[i][1] == "女"){

             document.write(infos[i][0]+"<br/>");

         }

    如果infos里的i里的第四个元素是"大一",同时infos里的i里的第二个元素是"女",

    就输出infos里的i里的第一个元素。

  • Win_me
    2017-03-31 17:02:43

    不好意思,以上的“第i个子数组”修改为“第i+1个子数组”

    Win_me 回复慕粉1859...

    第一个数据,指的是索引为0的数据吧

    2017-04-01 10:44:33

    共 2 条回复 >

  • Win_me
    2017-03-31 17:01:22

     ('小A','女',21,'大一'),  ('小B','男',23,'大三'),

    ('小C','男',24,'大四'),  ('小D','女',21,'大一'),

    ('小E','女',22,'大四'),  ('小F','男',21,'大一'),

     ('小G','女',22,'大二'),  ('小H','女',20,'大三'),

     ('小I','女',20,'大一'),  ('小J','男',20,'大三')

    说明:

     ('小I','女',20,'大一')表示二维数组中的子元素(二维数组的子元素就是一维数组)

    数组的索引从0开始

    代码解析:

    infos进行循环操作

    获取第i个子数组中第四个元素的值(即:年级)   等于  “大一”并且  获取第i个子数组中第二个元素的值(即:性别)   等于  “女”。满足此条件就输出同时满足条件学生的姓名(即:第i个子数组中第一个元素的值(即:姓名))

    重点:二维数组就是子元素为一维数组的复杂数据类型

  • 星邪
    2017-03-31 16:58:04

    二维数组形象点说:就是一个篮子里在放几个篮子,第一个篮子只放小的篮子,其它东西(数据)放在第二个篮子里。

  • Akun5
    2017-03-31 16:51:56

    二维数组就是数组中的每一个元素又是一个数组,语言不好说,你应该拿个纸和笔画一画,理解一下二维数组

    Akun5 回复慕粉1859...

    那就是还不懂该知识点的原理啊

    2017-03-31 17:48:21

    共 4 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题