慕数据7935617
2016-06-17 09:35
<!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,'大三']
];
//第一次筛选,找出都是大一的信息
for(var i=0;i<infos.length;i++){
if( infos[i][1] == "女" ){
var arr1 = []; var n=0;n++;
arr1[n] = infos[i];
document.write(arr1[n]+"<br/>");
}
}
document.write("女生人数: "+arr1.length+"<br/>")
//第二次筛选,找出都是女生的信息
for(var i=0;i<arr1.length;i++){
//这里可以用switch
if(arr1[i][3]=="大一")
{ document.write(arr1[i][3]+"<br/>");}
}
</script>
</head>
<body>
</body>
</html>
<!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 = new Array();//此处变量声明应该放在循环外面,否则每次循环会被重置
var n=0;//同理
//第一次筛选,找出都是女生的信息
for(var i=0;i<infos.length;i++){
if( infos[i][1] == "女" ){
arr1[n] = infos[i];
document.write(arr1[n]+"<br/>");
n++;//数组下标是从0开始的,所以放在输出后再加一
}
}
document.write("女生人数: "+arr1.length+"<br/>")
//第二次筛选,找出都是大一的信息
for(var i=0;i<arr1.length;i++){
//这里可以用switch
if(arr1[i][3]=="大一")
{ document.write(arr1[i]+"<br/>");}//不是arr1[i][3]
}
</script>
</head>
<body>
</body>
</html>主要是变量声明放在循环体里了,帮你修改了代码,现在可以执行了,注释了修改点和原因。
JavaScript进阶篇
469074 学习 · 22582 问题
相似问题