第二次筛选用switch怎么写

来源:4-10 编程练习

慕丝5359371

2016-12-24 08:07

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

看参考代码说可以用switch,自己试了试,一点头绪没有

写回答 关注

2回答

  • qq_守住份堅持_0
    2016-12-24 10:37:41
    已采纳

    switch(表达式)

    {case值1:
     执行代码块 1  

    break;

    case值2:
     执行代码块 2  

    break;

    ...

    case值n:
     执行代码块 n  

    break;

    default:
     与 case值1 、 case值2...case值n 不同时执行的代码
    }

    这是慕课里介绍的switch的语法,按我的理解这里的"表达式”代表的就相当于是一个集合,比如所一个数组,var a=new Array(1,2,3,4);

    switch(a){

    }这里面的a代表的就是数组里面的1,2,3,4有四个值四种选项,而case 1: 代表的也就是当a=1的时候也就是第一个选项。

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

        switch(infos[i][3]){

            case "大一" :

                switch(infos[i][1]){

                    case "女" :

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

                }

        }

    }

    而这个题里要用switch筛选的话首先要建立switch(表达式){}中的这个表达式也就是上述代码里的这个infos[i][3] 其中infos[i][3]中得 i 代表的是有这么多个学生,像这里有10个学生代表的也就是 i 为1的时候是第一个学生,2的时候是第二个学生。infos[i][3]里的3代表的是具体一个学生的第四个信息,也就是年级这个信息,一条信息看成一个数组['小A','女',21,'大一'],像这里 “小A”就是0,“女”就是1,”大一“也就是3了 ,所以infos[i][3]的内容也就是['大一','大三','大四','大一',.........,'大三']  case "大一"就是筛选大一的一个动作了。筛选女生也是同理了。


    慕丝5359...

    额...switch原理我都懂,想看答案代码... 不过谢谢你写这么多辛苦了

    2016-12-25 08:23:49

    共 1 条回复 >

  • 撒哈拉的沙V
    2016-12-24 10:39:29

    通过两次将学生信息分割在不同的数组中(即首先将每个人的信息分在一块,然后对每个人的信息再分割,最后比较即可)

    慕丝5359...

    虽然还是一脸蒙逼,谢谢

    2016-12-25 08:25:18

    共 1 条回复 >

JavaScript进阶篇

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

468190 学习 · 21891 问题

查看课程

相似问题