为什么会出现所有的数组结果?

来源:3-7 二维数组

你问我叫虾米名

2015-12-14 22:42

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);

为什么会出现所有的结果而不是最后一个结果?

写回答 关注

2回答

  • 迷途的马尔斯
    2015-12-15 09:29:02
    已采纳

    大概看懂了你的问题;

    这样分析你的程序:

    1. 通过new生成了myarr的无属性数组对象;

    2. 通过i的一次遍历为myarr对象添加了3个属性,同时这3个myarr[i]属性也是数组对象;

    3. 通过j的一次遍历为每个myarr[i]对象添加了6个属性;

    4. 最后你输出的是myarr对象,会输出所有的属性,即所有的myarr[i]数组,所以就不是一个结果了

    lonely...

    既然遍历了,那中间赋值的是要干嘛?myarr[i][j]=i*j; 为什么不直接myarr[i][j]=18;

    2015-12-29 03:57:09

    共 2 条回复 >

  • 鬼知道的神经
    2015-12-14 23:34:32

    为什么不是所有的值。。。

    都是数组了,怎么会是一个值。。。

JavaScript进阶篇

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

468192 学习 · 21891 问题

查看课程

相似问题