<!DOCTYPE HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>流程控制语句</title>
<script type="text/javascript">
//第一步把之前的数据写成一个数组的形式,定义变量为 infos
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++){
//这里可以用switch
if(arr1[i][1]=='女')
{ document.write(arr1[i][0]+"<br/>");}
}
</script>
</head>
<body>
</body>
</html>这里的数组为什么是二维数组 明明有四个arr1[i][1]=='女'这个为什么是女
5 回答
已采纳
灬紫羽
TA贡献107条经验 获得超71个赞
因为在arr1[n]=infos[i]这里组装的arr1数组;每次循环写入数组的值如下:
arr1[0]=['小A','女',21,'大一']; arr1[1]=['小D','女',21,'大一']; arr1[2]=['小F','男',21,'大一']; arr1[3]=['小I','女',20,'大一'];
这样组装完的arr1就如下形式了:
arr1[ [0]=> ['小A','女',21,'大一'], [1]=> ['小D','女',21,'大一'], [2]=> ['小F','男',21,'大一'], [3]=> ['小I','女',20,'大一'] ];
这个你应该知道为啥是二维数组了吧;下面说第二个问题:
arr1[i]代表数组内的每个小数组(例如:['小A','女',21,'大一']);那么在这个小数组取值性别,就要取下标为1的值;所以是
arr[i][1]表示这个二维数组中每个学生的性别;要选女生,这个值肯定是要等于‘女’;所以
arr1[i][1]=='女';
风中走过
TA贡献2条经验 获得超0个赞
首先它已经定义arr1[n] = infos[i];;所以arr1[n] 相当与每组infos的一维数组,而其中的“1”是二维数组里面的数组,也就是性别,数组最初开始是从0开始数的
添加回答
举报
0/150
提交
取消