二维数组的赋值的问题

来源:4-10 编程练习

cesiya23

2015-10-18 16:20

请问这段代码为何无输出?二维数组不能这样赋值吗?

写回答 关注

5回答

  • 紫焰123
    2015-10-18 17:01:49
    已采纳

    1、var dayi = new Array();        //正确

    2、dayi[k]    = new Array()          //你在最后的循环里,将dayi的每个元素重新定义为array。就可以了。你试下。




    cesiya...

    非常感谢!

    2015-10-24 12:16:51

    共 3 条回复 >

  • _Doogie
    2015-10-19 20:03:26
    var infos=
      [ ['小A','女',21,'大一'],  ['小B','男',23,'大三'],
    
        ['小C','男',24,'大四'],  ['小D','女',21,'大一'],
    
        ['小E','女',22,'大四'],  ['小F','男',21,'大一'],
    
        ['小G','女',22,'大二'],  ['小H','女',20,'大三'],
    
        ['小I','女',20,'大一'],  ['小J','男',20,'大三']
      ]
     
     //第一次筛选,找出都是大一的信息
    for(i=0;i<10;i++){
        if(message[i][3]=='大一'){
            if(message[i][1]=='女'){
                document.write(message[i][0]);
            }
        }
    }

    cesiya...

    这样只能打印出来,我需要把大一学生的信息都另外存一个数组,谢谢了。

    2015-10-20 20:28:34

    共 1 条回复 >

  • ucas_sky
    2015-10-19 07:32:24

    document.write("大一学生的信息:<br>")
     for (i=0;i<=9;i++) { 
        if(infos[i][3] == '大一'){
            dayi[k] = infos[i];
            document.write(dayi[k]+"<br>");
            k++;
        }; }

    中间循环的那一段改成这段代码就可以了。


    cesiya...

    谢谢,不过我就是想知道我这样的二维数组赋值为什么不对

    2015-10-20 20:26:03

    共 1 条回复 >

  • 慕后端1508769
    2015-10-18 16:56:21

    这样写太麻烦了,我把你的代码优化了一下,一个是找出全是女的信息,一个是找出全是大一的信息

    <!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();
     infos = [
         ['小A','女',21,'大一'],
         ['小B','男',23,'大三'],
         ['小C','男',24,'大四'],
         ['小D','女',21,'大一'],
         ['小E','女',22,'大四'],
         ['小F','男',21,'大一'],
         ['小G','女',22,'大二'],
         ['小H','女',20,'大三'],
         ['小I','女',20,'大一'],
         ['小J','男',20,'大三']
         ];
     var dayi = new Array();
     var j = 0;
     document.write("大一女学生的信息:<br>")
     for (i=0;i<=9;i++)
     {  
        if(infos[i][3] == '大一' && infos[i][1] == "女")
        {
            dayi[j] = infos[i];
            document.write(dayi[j]+"<br>");
            j++;
        };
    
     }
     
     document.write("大一学生的信息:<br>")
     for (i=0;i<=9;i++)
     {  
        if(infos[i][3] == '大一')
        {
            dayi[j] = infos[i];
            document.write(dayi[j]+"<br>");
            j++;
        };
    
     }
    
     
     //第一次筛选,找出都是大一女生的信息
     //第二次筛选,找出都是大一的信息
    </script>
    </head>
    <body>
    </body>
    </html>


    慢慢走0

    j++是什么意思 为什么要写在这 可以解释一下吗?

    2016-01-10 11:43:36

    共 2 条回复 >

  • 慕后端1508769
    2015-10-18 16:53:15

    天啊撸,你的需求是要筛选出大一中的女生吗?

    cesiya...

    是的。

    2015-10-20 20:27:07

    共 1 条回复 >

JavaScript进阶篇

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

468194 学习 · 21891 问题

查看课程

相似问题