综合了一下,有兴趣的可以了解下。但是有个疑问:为什么数组名和执行语句中使用的数组名不同也可以得到答案?求解!
<!DOCTYPE HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>流程控制语句</title>
<script type="text/javascript">
//第一步把之前的数据写成一个数组的形式,定义变量为 infos
var itachi=
[
['小A','女',21,'大一'],
['小B','男',23,'大三'],
['小C','男',24,'大四'],
['小D','女',21,'大一'],
['小E','女',22,'大四'],
['小F','男',21,'大一'],
['小G','女',22,'大二'],
['小H','女',20,'大三'],
['小I','女',20,'大一'],
['小J','男',20,'大三']
];
/*
var i;
for(i=0;i<itachi.length;i++)
if(itachi[i][1]=="女"&&itachi[i][3]=="大一")
{document.write(itachi[i][0])}
*/
/*
for(i=0;i<itachi.length;i++){
if(itachi[i][1]=="女"){
switch(itachi[i][3]){
case "大一":
document.write(itachi[i][0])
}
}
}
*/
/*
for(var i=0;i<itachi.length;i++)
{
switch(itachi[i][1])
{
case "女":
switch(itachi[i][3])
{
case "大一":
document.write(itachi[i][0])
}
}
}
*/
/*
var i=0;
while(i<itachi.length){
switch(itachi[i][3]){
case "大一":
if(itachi[i][1]=="女"){
document.write(itachi[i][0])
}
}
i++;
}
*/
var arr1 = [];
var n = 0;
for(var i=0;i<infos.length;i++){
if( infos[i][3] == "大一" ){
arr1[n] = infos[i];
n=n+1;
}
}
for(var i=0;i<arr1.length;i++){
//这里可以用switch
if(arr1[i][1]=='女')
{ document.write(arr1[i][0]+"<br/>");}
}
</script>
</head>
<body>
</body>
</html>