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

标准答案,用了三重循环

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>流程控制语句</title>

<script type="text/javascript">


 //第一步把之前的数据写成一个数组的形式,定义变量为 infos

 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++){


     for(var j=0 ; j<infos[i].length ; j++){


         if(infos[i][j]=='大一'){

 //第二次筛选,找出都是女生的信息           

            for(var x=0 ; x<infos[i].length ; x++){

            

                if(infos[i][x]=='女'){

                

                    document.write(infos[i],"<br/>");

                    }

                }

             }  

         }

     }

</script>

</head>

<body>

</body>

</html>


正在回答

4 回答

 for(var i=0 ; i<infos.length ; i++){

   if(infos[i][3]=="大一"){

//这就直接可以筛选出来了

//当然这算一种取巧的方法,直接固定infos[i][3]的第二维的遍历位置

//这样做的目的是更快地得出运算结果


1 回复 有任何疑惑可以回复我~
#1

慕粉0247298809 提问者

嗯,我当时写的时候也考虑到这个,想要不在乎位置,不在乎数量,还是要用三重循环。
2019-07-12 回复 有任何疑惑可以回复我~
#2

半空之境 回复 慕粉0247298809 提问者

反正写代码的时候怎么快怎么来,怎么节省资源怎么来
2019-07-12 回复 有任何疑惑可以回复我~

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>流程控制语句</title>

<script type="text/javascript">


 //第一步把之前的数据写成一个数组的形式,定义变量为 infos

 var infos = new Array('小A','小B','小C','小D','小E','小F','小G','小H','小I','小J');

  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(i=0;i<=9&&i>=0;i++){

         if(infos[i][3]=='大一'){

             if(infos[i][1]=='男'){

                 continue;

             }else{

                 document.write(infos[i]+"<br>");

             }

         }else{

             continue;

         }

 }

</script>

</head>

<body>

</body>

</html>


0 回复 有任何疑惑可以回复我~

<script type="text/javascript">


 //第一步把之前的数据写成一个数组的形式,定义变量为 infos

 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++){

    if(infos[i][3]=='大一'&&infos[i][1]=='女'){

        document.write(infos[i][0]+"<br>")

        

    }

 }


</script>


1 回复 有任何疑惑可以回复我~

应该是标准答案了

0 回复 有任何疑惑可以回复我~
#1

半空之境

第一层和第二层的循环可以再简化成一个循环
2019-07-10 回复 有任何疑惑可以回复我~
#2

慕粉0247298809 提问者 回复 半空之境

是写成for(var i=0 , j=0 ; i<infos.length , j<infos.length ; i++,j++)这样吗?
2019-07-10 回复 有任何疑惑可以回复我~
#3

慕粉0247298809 提问者 回复 半空之境

直接写在回答里,我好采纳你的意见;
2019-07-10 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468284    人
  • 解答问题       21892    个

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

进入课程

标准答案,用了三重循环

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信