ohitisme
2016-10-19 10:49
这段代码哪里有错误吗?
<!DOCTYPE HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>流程控制语句</title>
<script type="text/javascript">
var infos=[['小A','女',21,'大一'],
['小B','男',23,'大三'],
['小C','男',24,'大四'],
['小D','女',21,'大一'],
['小E','女',22,'大四'],
['小F','男',21,'大一'],
['小G','女',22,'大二'],
['小H','女',20,'大三'],
['小I','女',20,'大一'],
['小J','男',20,'大三']];
//第一步把之前的数据写成一个数组的形式,定义变量为 infos
var dayi=new Array();
var nvsheng=new Array();
var j=0,n=0;
for (var i=0;i<infos.length;i++)
{
if(infos[i][3]=="大一")
{
var dayi[j]=new Array();
dayi[j]=infos[i];
j++;
}
//第一次筛选,找出都是大一的信息
if(infos[i][1]=="女")
{
var nvsheng[n]=new Array();
dayi[n]=infos[i];
n++;
}
}
//第二次筛选,找出都是女生的信息
for(i=0;i<=j;i++){
document.write(dayi[i]+"<br/>");
}
for(i=0;i<=n;i++){
document.write(nvsheng[i]+"<br/>");
}
</script>
</head>
<body>
</body>
</html>
你上面已经声明了dayi 和 nvsheng 下面就不用再写了 直接赋值就可以 var dayi[j]=new Array(); 而且这样写也是错误的 还有下面的循环都应该是< 不是<=
if(infos[i][1]=="女")
{
var nvsheng[n]=new Array();
//dayi[n]=infos[i];
nvsheng[n]=infos[i];
n++;
}
}
//第二次筛选,找出都是女生的信息
i 与dayi 是同级数组,明显错误啊
<!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<10;i++){
if(infos[i][3]=="大一"&&infos[i][1]=="女")
document.write(infos[i][0]+"<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">
var infos=[['小A','女',21,'大一'],
['小B','男',23,'大三'],
['小C','男',24,'大四'],
['小D','女',21,'大一'],
['小E','女',22,'大四'],
['小F','男',21,'大一'],
['小G','女',22,'大二'],
['小H','女',20,'大三'],
['小I','女',20,'大一'],
['小J','男',20,'大三']];
//第一步把之前的数据写成一个数组的形式,定义变量为 infos
var dayi=new Array();
var nvsheng=new Array();
var j=0,n=0;
for (var i=0;i<infos.length;i++)
{
if(infos[i][3]=="大一")
{
dayi[j]=new Array();
dayi[j]=infos[i];
j++;
}
//第一次筛选,找出都是大一的信息
if(infos[i][1]=="女")
{
nvsheng[n]=new Array();
nvsheng[n] = infos[i];
n++;
}
}
//第二次筛选,找出都是女生的信息
for(i=0;i<j;i++){
document.write(dayi[i]+"<br/>");
}
document.write("<br/>");
for(i=0;i<n;i++){
document.write(nvsheng[i]+"<br/>");
}
</script>
</head>
<body>
</body>
</html>
JavaScript进阶篇
468192 学习 · 21891 问题
相似问题
回答 2
回答 3
回答 2
回答 3
回答 2