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

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

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

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

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

     }

 }


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

正在回答

6 回答

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

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

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

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

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

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

慕粉1859536052 提问者

哦哦!结合全部代码看懂了!谢谢!
2017-03-31 回复 有任何疑惑可以回复我~

可以这样理解吗?

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

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

     }

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

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

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

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

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

Win_me 回复 慕粉1859536052 提问者

第一个数据,指的是索引为0的数据吧
2017-04-01 回复 有任何疑惑可以回复我~

 ('小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个子数组中第一个元素的值(即:姓名))

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

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

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

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

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

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

慕粉1859536052 提问者

在学的时候画了一个表格,换一个复杂一点的又不懂了。请问除了mooc还有哪里讲得比较清晰的吗?
2017-03-31 回复 有任何疑惑可以回复我~
#2

慕粉1859536052 提问者 回复 Akun5

嗯嗯,就是感觉上个题目懂了这个题目又不懂了
2017-03-31 回复 有任何疑惑可以回复我~
#3

Akun5 回复 慕粉1859536052 提问者

那就是还不懂该知识点的原理啊
2017-03-31 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消

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

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