//第一次筛选,找出都是大一的信息
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/>")
看了半天,大概懂了:
用第一次筛选infos二维【3】为“大一的”,存在arr1的一维里,
第二次筛选一维里【1】为“女生”的元素,输出【0】姓名
但是我加粗的 arr1[n] = infos[i]; 、 n=n+1;
这个n到底是什么东西,绕晕了求大神给我缕一缕
题目要求建立一个infos数组来存取数据,标准答案又创建了一个arr1数组并用变量n来代替0,1,2。。这些,在infos数组里面进行循环,如果符合条件就存到arr1数组中,例如第一个存到arr1【0】中,一次循环最后n加一,下一个符合条件的就会存到arr1【1】中,最后筛选出符合条件就是这个新数组arr1的数据。
var infos = [
['小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])
}
}