这么写错了吗?为什么没有输出结果呢?

来源:4-10 编程练习

魔铃咔咔

2017-02-15 16:07

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++){
     infos[i]=new Array();
     for(var j=0;j<4;j++){
         if(infos[i][j]=="大一" && infos[i][j]=="女"){
             document.write(infos[i][0]+"<br>");
         }
     }
 }
 

写回答 关注

3回答

  • StupidFox
    2017-02-24 15:54:07
    已采纳

    你这样写在if条件判断的地方infos[i][j]是一个值,不可能同时等于“大一”和“女”的

    魔铃咔咔

    非常感谢!明白了

    2017-03-02 09:23:34

    共 1 条回复 >

  • 慕粉2244048219
    2017-02-15 16:58:22

    new 等于重新初始化

  • flymeans
    2017-02-15 16:25:01

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

         //infos[i]=new Array();

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

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

             }

         }

    这样就对了

    魔铃咔咔

    就是没明白为什么不能像我那样写?为啥一定要指定下标,不能使用for循环自己匹配到吗?

    2017-02-15 16:39:45

    共 1 条回复 >

JavaScript进阶篇

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

468061 学习 · 21891 问题

查看课程

相似问题