问答详情
源自:4-10 编程练习

终于拼凑出来了,请各位大仙看看有没有简洁点的方法?

 var infos=[['小A','女',21,'大一'],['小B','男',23,'大三'],['小C','男',24,'大四'],['小D','女',21,'大一'],['小E','女',22,'大四'],['小F','男',21,'大一'],['小G','女',22,'大二'],['小H','女',20,'大三'],['小I','女',20,'大一'],['小J','男',20,'大三']];
    var wanted=new Array();
    var mychar=new Array();
    var j;
    var l;
    // console.log(infos);
    for (var i = 0; i < infos.length; i++)
    {
        if (infos[i][3]==("大一"))
            {
                wanted[j]=infos[i];
                var myarr=new Array(wanted[j]);
                console.log(myarr);
                // document.write("大一学生:"+infos[i]+"<br/>")
                // var wanted=new Array();
                for (var j = 0; j < myarr.length; j++)
                {
                    if (myarr[j][1]==("女"))
                     {
                        mychar[l]=myarr[j]
                         // console.log(mychar[l]);
                        document.write("姓名:"+mychar[l][0]+"<br/>")
                     };
                };
            };
        
    };

提问者:kellyounger 2015-11-15 19:14

个回答

  • 李晓健
    2015-11-15 19:39:10
    已采纳

    首先不知道你的目的是什么,从代码和结果来看,就认识你是在一堆学生中挑出大一的妹子。以下是我的实现代码,不知道是不是你认为的简洁。

    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,len=infos.length;i<len;i++){
        var info = infos[i];
        if(info[1] == '女' && info[3] == '大一'){
            document.write("姓名:" + info[0] + "<br/>");
        }
    }


  • 西瓜瓜瓜
    2015-11-23 10:24:14

     console.log(myarr);是什么意思,求解释

  • tron
    2015-11-17 14:47:43

    初学,很多地方看不懂;

    var info=infos[i]; 这一步是什么意思?

    if(info[1] == '女' && info[3] == '大一')中的“1“和”3"是什么意思?


  • kellyounger
    2015-11-15 21:06:58

    thanks a lot~~~