用switch,哪里错了

来源:4-10 编程练习

慕慕4512663

2017-05-28 22:14

		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++){
    	var n = 0;
    	var arr=[];
    switch(infos[i][3]){
    	case "大一":
    	  arr[n]=infos[i][3];
    	  break;
    	  default:
    	  document.write("<br>");
    	  n++;
    }}
    for(var j=0;j <arr.length;j++){
     	switch(arr[j][1]){
     		case "女":
     		document.write(arr[j][0]);
     		break;
     		default:
    	    document.write("<br>");
     	}
    }


写回答 关注

3回答

  • 慕勒7123956
    2017-05-28 22:43:29
    已采纳
    <!DOCTYPE  HTML>
    <html >
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>流程控制语句</title>
    
    </head>
    <body>
    <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,'大三']];
         var n = 0; var arr=[];
        for(var i=0;i<infos.length;i++){
           
           
        switch(infos[i][3]){
            case "大一":
              arr[n]=infos[i];
              n++;
              console.log(n);
              break;
              default:
              document.write("<br>");
      
             
        }};
        console.log(arr.length);
        for(var j=0;j <arr.length;j++){
           switch(arr[j][1]){
               case '女':
               document.write(arr[j][0]+"<br>");
               break;
               default:
                document.write("<br>");
              
           }
        }
    
      
    </script>
    </body>
    </html>


  • 慕标2536676
    2017-06-23 22:46:30

    jojo

  • 慕勒7123956
    2017-05-28 22:46:03

    问题还是蛮多的,例如后面你想再次判断arr[j][1],那么就要给arr赋值的时候也是一个二维数组,arr[n]=infos[i];例如这个,而且我觉得你的n++可能放的位置不对,会影响arr的数组的长度。n和arr都需要在循环外定义,不然每次都会重新定义一次,相当与重新初始化了

    慕慕4512... 回复慕勒7123...

    谢谢啦

    2017-05-28 23:10:03

    共 3 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468060 学习 · 21891 问题

查看课程

相似问题