('小A','女',21,'大一'), ('小B','男',23,'大三'),
('小C','男',24,'大四'), ('小D','女',21,'大一'),
('小E','女',22,'大四'), ('小F','男',21,'大一'),
('小G','女',22,'大二'), ('小H','女',20,'大三'),
('小I','女',20,'大一'), ('小J','男',20,'大三')怎么用switch筛选大一女生
//第一步:把之前的数据写成一个数组的形式,定义变量为 infos
var infos=[
['小A','女',21,'大一'],
['小B','男',23,'大三'],
['小C','男',24,'大四'],
['小D','女',21,'大一'],
['小E','女',22,'大四'],
['小F','男',21,'大一'],
['小G','女',22,'大二'],
['小H','女',20,'大三'],
['小I','女',20,'大一'],
['小J','男',20,'大三']
];
//第二步:switch要做两层,找出“大一”&&“女”的信息
for(var i=0;i<10;i++){
switch(infos[i][3]){
case '大一':
switch(infos[i][1]){
case '女':
document.write(infos[i][0]);
break;
default:
continue;
}
break;
default:
continue;
}
}
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(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/>");
for(i=0;i<arr1.length;i++){
switch(arr1[i][1]){
case '女':
document.write(arr1[i]+"<br/>");
n=n+1;
}
}
首先将数据录入成二维数组,var myarray=[['小A','女',21,'大一'],['小B','男',23,'大三'],...['小J','男',20,'大三']];
然后:
for(var i=0;i<myarray.length;i++){
switch (myarray[i][1]){
case '女': switch(myarray[i][3]){case '大一': document.write(myarray[i][0]+'<br/>');break;default:break;};break;
default:break;
}
}
switch的话要两层?
我用if做的 &&就好了
这里的switch起到的作用和if是一样的,当数组中的某一项符合‘大一’或者‘女生’这个条件时,将它输出或者记录。