JavaScript -- 定义二维数组
方法一:直接定义并且初始化,这种遇到数量少的情况可以用
var _TheArray = [["0-1","0-2"],["1-1","1-2"],["2-1","2-2"]]
方法二:未知长度的二维数组
|
1
2
3
4
5
6
7
8
9
10
|
var tArray = new Array(); //先声明一维for(var k=0;k<i;k++){ //一维长度为i,i为变量,可以根据实际情况改变tArray[k]=new Array(); //声明二维,每一个一维数组里面的一个元素都是一个数组;for(var j=0;j<p;j++){ //一维数组里面每个元素数组可以包含的数量p,p也是一个变量;tArray[k][j]=""; //这里将变量初始化,我这边统一初始化为空,后面在用所需的值覆盖里面的值 }} |
给定义的数组传入所需的值
tArray[6][1]=5;//这样就可以将5的值传入到数组中,覆盖初始化的空
方法三:在这之前,以上两者方法都有问题,方法二,每次定义都初始化了,虽然后面可以动态修改,但是还是不方法
所以我尝试了一种动态传入值到数组的方法
ps:一些在实践过程中遇到的数组有趣的现象
本来以为二维数组可以像下面这样直接传入值
|
1
2
3
4
|
for(var a=0;a<i;a++){tArray[a]=(matArray[a],addArray[a]); //matArray[a]和addArray[a]是两个数组,这两个数组直接传入tArray[a]中}; |
结果是tArray[a]中收到的是后面一个数组的值,matArray[a]的内容被忽略的,如果换一个位置,matArray[a]在后面,则传入的是addArray[a]的值。
思考:简单的例子:
var b=[];
b[0]=a;//把数组a作为b数组的元素传入b数组中
alert(b[0][1]); //2
上面是最简单的二维数组,
上面例子换种写法:
代码如下:
b[0]=[1,2];//把数组[1,2]作为b数组的元素传入b数组中
alert(b[0][1]); //2
可以看出上面的b[0]=[1,2]是可以用的
代码如下:
tArray[a]=[ matArray[a],addArray[a] ]; 上面例子中的()修改为[] 就可以成功的组成一个二维数组了
};
总结:方法三:
代码如下:
tArray[a]=[ aArray[a],bArray[a],cArray[a]]; 还可以增加dArray[a],eArray[a]
};
这种情况适用于已知几个数组,把他们组合成一个二维数组情况
JS 创建多维数组
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
<script> var allarray=new Array(); var res=""; function loaddata() { for(var i=0;i<3;i++) { var starth=i*200; var strarw=i*200; var endh=(i+1)*200; var endw=(i+1)*200; allarray[i]=new Array(); allarray[i][0]=new Array(); allarray[i][1]=new Array(); allarray[i][0][0]=starth; allarray[i][0][1]=strarw; allarray[i][1][0]=endh; allarray[i][1][1]=endw; } for(var i=0;i<allarray.length;i++) { var sh=allarray[i][0][0]; var sw=allarray[i][0][1] var eh=allarray[i][1][0]; var ew=allarray[i][1][1] res+="第"+i+"个坐标的开始坐标是:"+sh+","+sw+"结束坐标是:"+eh+","+ew+"<br/>"; } document.getElementById("dv").innerHTML=res; }</script> |
JavaScript -- 定义二维数组的更多相关文章
- javascript定义二维数组与添加
你定义的已经就是的了啊.不是很明白你的问的什么.你是说如何向里面填充?双层循环就行了撒:for(var i = 0; i < X; i++){ for(var j = 0; j < Y; ...
- 同事问如何判断同花顺,我用javascript的二维数组写了个简易demo
有个前同事在群里问如何判断是否为同花顺我用javascript的二维数组写了个简易demo. <!DOCTYPE html> <html> <body> <s ...
- Android 在资源文件(res/strings.xml)定义一维数组,间接定义二维数组
经常我们会在资源文件(res/strings.xml)定义字符串,一维数组,那定义二维数组?直接定义二维数组没找到,可以间接定义. 其实很简单,看过用过一次就可以记住了,一维数组估计大家经常用到,但是 ...
- 【转】java中定义二维数组的几种写法
原文链接 注:以下的 type[][] var 也可以这样申明 type var[][] type为数组的类型,var为变量名 写法一:行列固定的数组 //定义二维数组写法1 class Test { ...
- flash 定义二维数组
一种二维数组的定义方法 //假设二维数组为 [5][7]var xn:Number = 5;var yn:Number = 7; //定义一数值变量var temp:Number = 0; ...
- 在python中定义二维数组
发表于 http://liamchzh.0fees.net/?p=234&i=1 一次偶然的机会,发现python中list非常有意思. 先看一段代码 [py]array = [0, 0, 0 ...
- 一道JavaScript的二维数组求平均数的题
JavaScript中只支持一维数组,但是可以在数组中嵌套数组来创建二维以至于多维的数组.今天下午在看书时候,发现一道感觉比较有意思的题,就是js中如何求二维数组的列之和和行之和,现在就给大家分享下, ...
- c++ 二维数组定义 二维数组首地址查询
#include <iostream> using namespace std; int main() { ][] = { {,,}, {,,} }; cout << &quo ...
- JavaScript的二维数组
二维数组的初始化: 实例① var arr = [[1,2],['a','b']]; console.log(arr[1][0]); //a 第2列第1行所在的元素 实例② var arr = new ...
随机推荐
- jconsole连接远程tomcat
windows(Windows操作系统下的远程监控) 1.编辑文件:在进入到了tomcat中的bin的目录中,进行打开catalina.bat进行编辑文件. 2.添加代码:找到文件中的如下代码 rem ...
- 今天踩过的坑——structs和mysql
1 在action中写了interceptor-ref就不会用defaultStack啦.得自己补上2 继承CookiesAware是不够的,得在action中配置一下 <interceptor ...
- 使用Emit实现给实体赋值
Dapper.net的速度很快,最近看源码,原来他orm的实现是通过编写大量IL代码实现的. 使用DynamicMethod,自己编织一个给实体赋值的方法.这种写法效率很高,接近直接对属性赋值.比使用 ...
- Solr(一) 安装部署环境
Solr运行环境 第一步:安装java jdk 第二步:安装tomcat服务器 安装过程:参考http://jingyan.baidu.com/article/870c6fc33e62bcb03fe4 ...
- iOS ItunesStore 首页推荐
ItunesStore 首页推荐需要发给苹果一些 app 的相关信息,以及制作一个符合要求的图片. 图片要求可能经过过修改,要求会变化. 以下内容用于参考: 例子 1: Hello, My name ...
- python--变量,常量,用户交互
1.变量 概念:把程序运行过程中产生的中间值保存在内存,方便后面使用 命名规范: 1.字母,数字,下划线组成 2.不能用数字开头,且不能用纯数字 3.不能用python关键字 4.不要用中文 5.要有 ...
- 【BZOJ1956】[Ahoi2005]SHUFFLE 洗牌
题目描述: 这道题,我们首先一眼瞪出来一个规律:对于一个位置为i的牌,在1次洗牌后,他的位置处于(i*2)%(n+1) 的位置 那么,显然的,对于M次洗牌 我们只需要求出2的m次方,这个我们采用快速幂 ...
- LG的nexus5(32GB版本 - 821)-TOT-底包 可用于救砖!
LG的nexus5(32GB版本 - 821)-TOT-底包 底层修复效果完美,通过LGflashTool1.8直接刷进去就行~ 底包下载: https://pan.baidu.com/s/1Z5WD ...
- C++基础知识:成员函数、对象拷贝、私有成员
一.综述 类是我们自己定义的数据类型(新类型) 设计类时要考虑的角度: (1)站在设计和实现者的角度来考虑 (2)站在使用者的角度来考虑 (3)父类,子类 二.类基础 (1)一个类就是一个用户自己定义 ...
- iOS开发中断言的使用—NSAssert()
原文链接:http://blog.csdn.net/univcore/article/details/16859263 断言(assertion)是指在开发期间使用的.让程序在运行时进行自检的代码(通 ...