视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
js处理自己不能定义二维数组的方法详解_javascript技巧
2020-11-27 21:20:27 责编:小采
文档


代码如下:
var a= new Array(new Array(1,2),new Array('b','c'));
document.write(a[1][1]);
说白了,就是利用for循环定义二维数组!
?

function Array_2(nRow,nColumn){
var array1=new Array(); //定义一维数组
for(i=0;i //将每一个子元素又定义为数组
array1[i]=new Array();
//----------------------------------------
         for(n=0;n array1[i][n] = ''; //此时aa[i][n]可以看作是一个二级数组
}
//--------------------------------------
       }
return array1;
}

var array_2= Array_2(3,2);
array_2[0][1] = 1;
array_2[0][2] = 2;
array_2[1][1] = 3;
array_2[1][2] = 4;

document.write(array_2[1][2]);


//虚线部分还可以采用js Array内置对象的push()方法来实现,因为arr1.push(arr2)时候,将会把整个数组arr2做为一个元素添加到arr1数组中,所以虚线中的for循环完全可以用下面这条语句替换掉:array1[i].push(new Array(nColumn));

今天还发现,还可以这样定义也可以做成二维数组;
代码如下:
var a= new Array(new Array(1,2),new Array('b','c'));
document.write(a[1][1]);

ps:注意区分push和concat的区别!

push 方法将以新元素出现的顺序添加这些元素。如果参数之一为数组,那么该数组将作为单个元素添加到数组中。如果要合并两个或多个数组中的元素,请使用 concat 方法。

concat 方法返回一个 Array 对象,其中包含了 array1 和提供的任意其他项目的连接。要加的项目(item1 … itemN)会按照从左到右的顺序添加到数组。如果某一项为数组,那么添加其内容到 array1 的末尾。如果该项目不是数组,就将其作为单个的数组元素添加到数组的末尾。

很好嘛!!!

下载本文
显示全文
专题