<!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 i,j;
//第一次筛选,找出都是大一的信息
for(i=0;i<10;i++){
for(j=0;j<4;j++){
if(infos[i][j]="女"&&infos[i][j+2]="大一")
{
document.write(infos[i][j-1]+"<br/>");
}
}
}
//第二次筛选,找出都是女生的信息
</script>
</head>
<body>
</body>
</html>
错误一:数组infos里面要把括号去掉,数组没有这个中括号加小括号的组合;
错误二: if(infos[i][j]="女"&&infos[i][j+2]="大一") 判断是否相等,用 == ,一个=是赋值
for(var i = 0; i < infos.length; i++) { if(infos[i][3] === "大一" && infos[i][1] === "女") { document.write(infos[i][0] + "<br />"); }}
把双循环换单循环 因为你一次要判断既是女又是大一 如果双循环一次就有一个数组元素 很好理解的