<!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','大二'],['F','女','20','大三']]
//第一步把之前的数据写成一个数组的形式,定义变量为 infos
var xin = []
var nv = []
for (let i = 0; i < infos.length; i++) {
for ( let j = 0 ; j < infos[i][j].length; j++) {
if (infos[i][3] == '大一') {
xin.push(infos[i])
}
if (infos[i][3] == '大一' && infos[i][2] == '女') {
nv.push(infos[i])
}
}
}
alert('大一新生有' + xin)
alert('大一新女生有' + nv)
//第一次筛选,找出都是大一的信息
//第二次筛选,找出都是女生的信息
</script>
</head>
<body>
</body>
</html>
第二层循环有问题,第一层循环一维数组,长度是10个,第二层循环的是已经符合条件的4个数组中的每条二维数组的长度infos[i].length,你写成infos[i][j].length,代入数字就好理解了,比如infos[0][2].length,其实【0】找到的是['小A','女',21,'大一']【2】找到的是21,这个字段的长度。
// 第一步把之前的数据写成一个数组的形式,定义变量为 infos
var infos = [['小A','女',21,'大一'],['小B','男',23,'大三'],['小C','男',24,'大四'],['小D','女',21,'大一'],['小E','女',22,'大四'],['小F','男',21,'大一'],['小G','女',22,'大二'],['小H','女',20,'大三'],['小I','女',20,'大一'],['小J','男',20,'大三']];
// 声明新生、女生数组
var newStudent = [];
var girls = [];
//第一次筛选,找出都是大一的信息
for (let i = 0; i < infos.length; i++) {
if (infos[i][3] == '大一') {
newStudent.push(infos[i]);
//第二次筛选,找出都是女生的信息
for ( let j = 0 ; j < infos[i].length; j++) {
if (infos[i][j] == '女') {
girls.push(infos[i]);
}
}
}
}
console.log('大一新生有', newStudent);
console.log('大一新女生有', girls);
//第一步把之前的数据写成一个数组的形式,定义变量为 infos
var infos=[['小A','女',21,'大一'],['小B','男',23,'大三'],['小C','男',24,'大四'],['小D','女',21,'大一'],['小E','女',22,'大四'],['小F','男',21,'大一'],['小G','女',22,'大二'],['小H','女',20,'大三'],['小I','女',20,'大一'],['小J','男',20,'大三']];
//第一次筛选,找出都是大一的信息
var newStudent=[];
var girls=[];
for(var i=0;i<infos.length;i++){
if(infos[i][3]=="大一"){
newStudent.push(infos[i]);
}
}
alert("大一新生所有信息:"+newStudent);
//第二次筛选,找出都是女生的信息
for(var j=0;j<newStudent.length;j++){
if(newStudent[j][1]=="女"){
girls.push(newStudent[j][0]);
}
}
alert("女生姓名:"+girls);
<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,'大三']];
for(var i=0;i<infos.length;i++){
if(infos[i][3]=="大一"&&infos[i][1]=="女"){
document.write(infos[i][0]+"<br/>")
}
}
</script>