`

js 二维数组 定义和初始化 三种方法

    博客分类:
  • JS
 
阅读更多

方法一:直接定义并且初始化,这种遇到数量少的情况可以用

 

var _TheArray = [["0-1","0-2"],["1-1","1-2"],["2-1","2-2"]]

 

方法二:未知长度的二维数组

 

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:一些在实践过程中遇到的数组有趣的现象

本来以为二维数组可以像下面这样直接传入值

 

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 a=[1,2];

var b=[];

b[0]=a;//把数组a作为b数组的元素传入b数组中

alert(b[0][1]);  //2

上面是最简单的二维数组,

上面例子换种写法:

 

 

var b=[];

b[0]=[1,2];//把数组[1,2]作为b数组的元素传入b数组中

alert(b[0][1]);  //2

 

 

可以看出上面的b[0]=[1,2]是可以用的

 

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

tArray[a]=[ matArray[a],addArray[a] ];  上面例子中的()修改为[] 就可以成功的组成一个二维数组了

};

 

总结:方法三:

 

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

tArray[a]=[ aArray[a],bArray[a],cArray[a]]; 还可以增加dArray[a],eArray[a]

};

 

这种情况适用于已知几个数组,把他们组合成一个二维数组情况

分享到:
评论

相关推荐

    js二维数组定义和初始化的三种方法总结

    本篇文章主要是对js二维数组定义和初始化的三种方法进行了总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助

    javascript 定义初始化数组函数

    方法一、js数组的定义与初始化 定义一维数组 方法1: var _TheArray = new Array();//定义 _TheArray[0]="1"; _TheArray[1]="2"; _TheArray[2]="3"; //初始化 方法2: var _TheArray = new Array(“1″,”2″,”3”...

    javascript中数组的多种定义方法和常用函数简介

    数组的定义:方法1....方法2.定义和初始化一起: 代码如下:var mycars=new ...javascript二维数组,用一维数组来模拟:方法1. 代码如下:var arr = new Array([‘a’,’b’,’c’],[‘d’,’e’,’f’]);arr[0]返回

    js中一维数组和二位数组中的几个问题示例说明

    在给一个空的二维数组赋值的时候出现的问题: var arr2=[]; arr2[1][1]=45;//js不支持这种赋值方法 解决方法: //在这之前需要初始化定义arr2有多少行。 for(var i=0;i&lt;5;i++){ arr2[i]=[]; } //这样就能对它...

    javascript数组的使用

    数组的定义: 方法1. 代码如下:var mycars=new Array()...javascript二维数组: javascript用一维数组来模拟二维数组: 方法1. var arr = new Array([‘a’,’b’,’c’],[‘d’,’e’,’f’]); arr[0]返回第一个一

    JavaScript数据结构之数组的表示方法示例

    因此,除了结构的初始化和销毁之外,数组只有存取元素和修改元素值的操作(这里注意和JavaScript中的array类型做出区分,这里说的是数据结构,而不是某一种单独语言的语法)。 由于数组一般不作插入或者删除操作,也...

    javascript入门笔记

    Javascript,简称为 JS,是一款能够运行在 JS解释器/引擎 中的脚本语言 JS解释器/引擎 是JS的运行环境: 1、独立安装的JS解释器 - NodeJS 2、嵌入在浏览器中的JS解释器 JS的发展史: 1、1992年 Nombas 开发...

    php网络开发完全手册

    5.4 定义属性和方法 72 5.4.1 属性与方法的定义 72 5.4.2 传统的构造函数 73 5.4.3 PHP类中的一些特殊方法 74 5.5 类的引用、扩展与继承 75 5.5.1 类的引用 75 5.5.2 类的扩展与继承 76 5.6 操作与调用 77 5.6.1 ...

    JAVA上百实例源码以及开源项目

    6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...

    JAVA上百实例源码以及开源项目源代码

    6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例133 二维数组的输出 162 实例134 获取数组当前的键名和值 162 实例135 检测数组中是否存在某个值 163 实例136 获取数组中的当前单元 164 实例137 从数组中随机取出元素 165 实例138 合并数组 166 实例139 拆分...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例133 二维数组的输出 162 实例134 获取数组当前的键名和值 162 实例135 检测数组中是否存在某个值 163 实例136 获取数组中的当前单元 164 实例137 从数组中随机取出元素 165 实例138 合并数组 166 实例139 拆分...

    跑马灯2.txt

    /*定义二维数组 为了易于维护修改,长宽设为参数m,n*/ function getSide(m,n){ var arr=[m];//先声明m长度的一维 for(var i=0;i;i++){ arr[i]=[n];//声明n长度的二维 for(var j=0;j;j++){ arr[i][j]=i*n+j...

    ExtAspNet_v2.3.2_dll

    -增加TabStrip中Tab控件可关闭属性EnableClose(默认为false)以及两个方法GetShowReference和GetHideReference(feedback:anson)。 -修正绑定到Tree的XMLDocument中Icon属性映射错误(feedback:nopnop9)。 -修正...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -增加TabStrip中Tab控件可关闭属性EnableClose(默认为false)以及两个方法GetShowReference和GetHideReference(feedback:anson)。 -修正绑定到Tree的XMLDocument中Icon属性映射错误(feedback:nopnop9)。 -修正...

Global site tag (gtag.js) - Google Analytics