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

求解答二维数组

二维数组的写法有些看不懂,想让比较有经验的老师帮我解答一下关于二维数组的写法。及逻辑

正在回答

4 回答

赞同二楼的理解,我觉得这样理解起来最合理

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

antplans

一楼 一楼
2016-03-24 回复 有任何疑惑可以回复我~

JavaScript实际没有二维数组,所有的数组都是一位数组,二维数组是其中的特例:即数组的某个元素也是数组

例如:声明一个数组  myarray = new Array();

        元素赋值: 前面赋值往往是这样的: myarray[0] = 1 ;

                            但实际上,你可以对元素赋值任何数或对象 ,包括 数字,字符串,数组,对象等

二维数组就是指   数组中的元素也是数组   即 myarray[0] = new array();  而且可以无限延伸下去

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

理解二维数组最为重要 。  二位数组其实就是一维数组中元素的一维数组 ,可以把它看作矩阵 ,可能有些不好理解。看下面的例子 

 var  array = [a1 , a2 , a3] ;  // 这个应该可以看的懂 , 就是创建了一个长度为3的数组 。 数组的值为a1 , a2 , a3。

那么当 a1 是  a1 = [1 , 2  , 3];   // 也就是说 a1也是一个一维数组的时候 。 同理a2 , a3也是 。 那么array是不是就是一个二维数组了 。

1.那么按照课程所教的 , 二位数组的声明方法 var array = [[1 , 2 ,3] , [2 , 3 , 4] , [3, 4, 5]];   //[1,2,3]就是a1 , [2,3,4]就是a2 ,[3,4,5]就是a3;

2.这是已知数组里的值的声明方法 , 如果你不知道值的话 , 想声明一个 2 * 3的二维数组 。 按照课程所教需要用到for循环。 看例子

var  array = new ARRAY();

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

        array[i] = new ARRAY();   // 注意现在的 array[i] 已经相当于之前的 a1了 。 只是a1里面还没标明有多少个元素

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

                array[i][j] = xx; //可以将值赋进去 。 如果是a1  , 那就分别是 1 , 2 ,3      

        }

}


// 以上全部是我的理解 , 不要按照标准来看 。 只是想便于你理解 。 如有问题希望补充 , 大家共同进步 

还有要注意 js 中的数组和 java中的数组差别还是蛮大的  。 例如 js数组是变长 。 当声明

var array = new ARRAY(3);    array[6] = xx;   这个时候不会报错 , 数组的长度自动变成 7 ; 而在java中则会报出数组越界的错误 。

还有 js 中的数组里的元素可以是不同类型 。 例如 var array = ["abc" , 123 , true] ; 这都没问题 , 但是java中数组的定义是相同类型元素的集合 。 所以大家用的时候可以注意一下 。  

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

antplans

赞同 这样的理解方法
2016-03-24 回复 有任何疑惑可以回复我~

跟一维的声明方式一样 别被那一大串给绕晕了 表示方式不一样 就这么大区别

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

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       469018    人
  • 解答问题       22582    个

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

进入课程

求解答二维数组

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号