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 ...
随机推荐
- 【译】ASP.NET MVC 5 官方教程 - 目录
ASP.NET MVC 5 官方教程 - 目录 [译]ASP.NET MVC 5 教程 - 1:入门 [译]ASP.NET MVC 5 教程 - 2:添加控制器 [译]ASP.NET MVC 5 教程 ...
- MSP430G2553 Launchpad 硬件I2C驱动
一.USCI I2C 驱动介绍 对于MSP430G2553,硬件I2C由外设USCI(Universal Serial Communication Interface)提供.USCI又分为USCI_A ...
- Jenkins pipeline中使用内置全局变量
在pipeline中不像在windows batch command中直接%WORKSPACE%这样 需要写成这样: echo env.WORKSPACE
- .NET Core调用WCF的最佳实践
现在.NET Core貌似很火,与其他.NET开发者交流不说上几句.NET Core都感觉自己落伍了一样.但是冷静背后我们要也看到.NET Core目前还有太多不足,别的不多说,与自家的服务框架WCF ...
- 【Dnc.Api.Throttle】适用于.Net Core WebApi接口限流框架
Dnc.Api.Throttle 适用于Dot Net Core的WebApi接口限流框架 使用Dnc.Api.Throttle可以使您轻松实现WebApi接口的限流管理.Dnc.Api.Thr ...
- MvvmLight框架使用入门(三)
本篇是MvvmLight框架使用入门的第三篇.从本篇开始,所有代码将通过Windows 10的Universal App来演示.我们将创建一个Universal App并应用MvvmLight框架. ...
- MaxScript镜像函数
看到有网友需要写的,其实镜像就是缩放改为负数 Fn MirrorObject argObjects argAxisName = ( local axisNames = #(#x,#y,#z) do ( ...
- 深入了解java虚拟机(JVM) 第九章 class文件结构及意义
Class文件是访问jvm的重要指令,学习了class文件能够更加深入的了解jvm的工作过程.本文只进行概况总结,要进行更加详细的学习class文件,可以参考:https://blog.csdn.ne ...
- 【vue】——使用watch 观察路由变化,重新获取内容
更新:11-29 时隔半年,又重新使用VUE进行开发,有了新方案--beforeRouteLeave 在组件内直接使用,前提是你用了vue-router: beforeRouteLeave (to, ...
- mxonline实战11,课程详情页2,课程章节页
对应github地址:第11天 一. 课程详情页2 1. 课程详情页第2块中的课程介绍中,修改course-detail.html中代码,搜索课程详情,找到如下代码