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

为什么出不来结果,单一筛选就能出来

 //第一步把之前的数据写成一个数组的形式,定义变量为 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++){

         var demo1=[];

         demo1=infos[i]

        

 //第一次筛选,找出都是大一的信息

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

     for(var j = 0;j < demo1.length;j++ ){

        if(demo1[j]=="大一"&&demo1[j]=="女" ){

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

        }

     }

     

 }


正在回答

4 回答

你数组里面的引号出错了,有单有双,改为单引号就行了。

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

 if(demo1[j]=="大一" &&demo1[j]=="女")这里有问题,demo[j]不可能同时是“大一”和“女生”,改成if(demo1[j]=="大一" &&demo1[j-2]=="女")就可以了

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

你看一下,你的  if(demo1[j]=="大一"&&demo1[j]=="女" ) 这部分代码,首先想法是非常棒的。但是,demo1[j]只可能且只能为一个值,你不能同时要求demo1[j]=="大一"和demo1[j]=="女"。你可以这样修改:

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

        var demo1=[];

        demo1=infos[i]

        if(demo1[3]=="大一"&&demo1[1]=="女" ){

            document.write(demo1[0]+"<br/>");

        }

     }

     


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

举报

0/150
提交
取消

为什么出不来结果,单一筛选就能出来

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