为了账号安全,请及时绑定邮箱和手机立即绑定

下面的代码为什么执行不了?

下面的代码为什么执行不了?

慕粉3414280 2016-06-15 14:04:54
<!DOCTYPE  HTML><html ><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>流程控制语句</title><script type="text/javascript">   var infos=new Array();  infos[0]=new Array('小A','女',21,'大一');  infos[1]=new Array('小B','男',23,'大三');  infos[2]=new Array('小C','男',24,'大四');  infos[3]=new Array('小D','女',21,'大一');  infos[4]=new Array('小E','女',22,'大四');  infos[5]=new Array('小F','男',21,'大一');  infos[6]=new Array('小G','女',22,'大二');  infos[7]=new Array('小H','女',20,'大三');  infos[8]=new Array('小I','女',20,'大一');  infos[9]=new Array('小J','男',20,'大三');      if(infos[0][3][8]=='大一'&&infos[8][0][3]=="女")     {      document.write("筛选都是大一的信息的结果如下:"+infos.length+"<br>");  } </script></head><body></body></html>    </script></head><body></body></html>
查看完整描述

2 回答

?
蜂之谷

TA贡献564条经验 获得超863个赞

不知道你想干嘛,如果是筛选大一的女生的话就这样写

<script type="text/javascript">

  var infos=new Array();
  infos[0]=new Array('小A','女',21,'大一');
  infos[1]=new Array('小B','男',23,'大三');
  infos[2]=new Array('小C','男',24,'大四');
  infos[3]=new Array('小D','女',21,'大一');
  infos[4]=new Array('小E','女',22,'大四');
  infos[5]=new Array('小F','男',21,'大一');
  infos[6]=new Array('小G','女',22,'大二');
  infos[7]=new Array('小H','女',20,'大三');
  infos[8]=new Array('小I','女',20,'大一');
  infos[9]=new Array('小J','男',20,'大三');
  for(var i=0;i<infos.length;i++){
     if(infos[i][3]=='大一' && infos[i][1]=="女"){
        document.write("筛选大一女生的信息的结果如下:"+infos[i][0]+"<br>"); 
	 }
  } 
 
</script>


查看完整回答
3 反对 回复 2016-06-15
  • 慕粉3414280
    慕粉3414280
    恩 我是想这样写。。 那么问题来了 if(infos[i][3]=='大一' && infos[i][1]=="女") infos[i][3]=='大一'这个可以理解为infos[i]与infos[3]和上面数组里面大一信息是对应的 但是infos[i][1]=="女"这个就有问题了infos[1]和上面数组信息对不上。。
?
qyy2499760117_叶子

TA贡献188条经验 获得超91个赞

执行不了的原因在于,你的判断语句不正确,   var infos=new Array();是一个数据,必需要循环,一个个地区判断,然后把符合条件的写出来。

<!DOCTYPE  HTML>
<html >
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   <title>流程控制语句</title>
   <script type="text/javascript">

       var infos=new Array();
       infos[0]=new Array('小A','女',21,'大一');
       infos[1]=new Array('小B','男',23,'大三');
       infos[2]=new Array('小C','男',24,'大四');
       infos[3]=new Array('小D','女',21,'大一');
       infos[4]=new Array('小E','女',22,'大四');
       infos[5]=new Array('小F','男',21,'大一');
       infos[6]=new Array('小G','女',22,'大二');
       infos[7]=new Array('小H','女',20,'大三');
       infos[8]=new Array('小I','女',20,'大一');
       infos[9]=new Array('小J','男',20,'大三');

       /*if(infos[0][3][8]=='大一'&&infos[8][0][3]=="女")
       {
           document.write("筛选都是大一的信息的结果如下:"+infos.length+"<br>");
       }*/
       document.write("筛选都是大一的信息的结果如下:"+"<br>");
       for(var i=0;i<infos.length;i++){
           if (infos[i][1]==='女'&&infos[i][3]==='大一'){
               document.write(infos[i]+"<br>");
           }
       }
   </script>
</head>
<body>
</body>
</html>


查看完整回答
2 反对 回复 2016-06-15
  • 慕粉3414280
    慕粉3414280
    if (infos[i][1]=='女'&&infos[i][3]=='大一') 你为什么要是这样写 为什么不能if (infos[i][7]=='女'&&infos[i][8]=='大一')
  • qyy2499760117_叶子
    qyy2499760117_叶子
    如果这样写,比如说现在有三个,你得写是三个if (infos[i][1]=='女'&&infos[i][3]=='大一') 、(infos[i][7]=='女'&&infos[i][8]=='大一')、(infos[i][5]=='女'&&infos[i][5]=='大一')这样的判断,要是有一百个呢?
  • qyy2499760117_叶子
    qyy2499760117_叶子
    for循环不容易错,代码少,也好调试,其实我不会做,我也是调试的,一边调试一边打印值。
  • 2 回答
  • 0 关注
  • 1381 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信