问答详情
源自:3-7 二维数组

为什么在括号外用document.write(myarr)输出不显示

var myarr=new Array();


for(var i=0;i<3;i++){

    

    myarr[i]=new Array();

    

    for(var j=0;j<6;j++){

        

        myarr[i][j]=i*j;


    }

    }

document.write("myarr["+i+"]["+j+"]="+myarr[i][j]+"<br />")


提问者:丧心病狂3226684 2016-04-21 23:58

个回答

  • 仁太
    2016-04-25 15:24:46
    已采纳

    var myarr=new Array();


    for(var i=0;i<3;i++){

        

        myarr[i]=new Array();

        

        for(var j=0;j<6;j++){

            

            myarr[i][j]=i*j;

     document.write("myarr["+i+"]["+j+"]="+myarr[i][j]+"<br />")

        }

       

        }

    你的代码中 document.write("myarr["+i+"]["+j+"]="+myarr[i][j]+"<br />") 这个输出语句在for循环外 

    你定义的i j都在for里面 大括号是作用域  大括号外面是获取不到i j 的 所以输出是输出不出来的

    你要把输出语句放到for循环里面 保证能获取到i j 这两个量  就可以看到结果了  再试试吧  

  • 卡溜灰
    2016-05-03 10:02:29

    为什么你要放个加号,有什么特殊作用吗?

  • 丧心病狂3226684
    2016-04-26 19:10:15

    感谢各位大神的解答

  • 慕粉3166481
    2016-04-22 00:59:46

    var myarr=new Array();
        for(var i=0;i<3;i++){
            myarr[i]=new Array();
            for(var j=0;j<6;j++){
                myarr[i][j]=i*j;
        }
        }

    for(var i=0;i<3;i++){
        for(var j=0;j<6;j++){
            document.write("myarr["+i+"]["+j+"]="+myarr[i][j]+"<br />")
        }
    }


    //这个就对了

  • 慕粉3166481
    2016-04-22 00:49:18

    document.write("myarr["+i+"]["+j+"]="+myarr[i][j]+"<br />")

    myarr前后不用加引号。。

  • chencw111
    2016-04-22 00:29:12

    放在外面,你就没有在for循环里面啊,无法执行for循环

  • coolheadedY
    2016-04-22 00:13:26

    没看懂你啥意思