js 2차원 array_javascript 기술을 정의하고 초기화하는 세 가지 방법 요약

WBOY
풀어 주다: 2016-05-16 16:57:34
원래의
2271명이 탐색했습니다.

방법 1: 직접 정의하고 초기화하는 방법은 숫자가 적을 때 사용할 수 있습니다.
var _TheArray = [["0-1","0-2"],["1-1","1-2"],["2-1","2-2"]]

방법 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를 배열에 전달하여 초기화된 빈

을 덮어쓸 수 있습니다.

방법 3: 이전에는 위의 두 가지 방법 모두 문제가 있었습니다. 방법 2에서는 각 정의가 나중에 동적으로 수정될 수 있지만 여전히 작동하지 않습니다.

그래서 배열에 값을 동적으로 전달하는 방법을 시도해보았습니다

ps: 실제로 배열에서 발생하는 몇 가지 흥미로운 현상

저는 원래 2차원 배열이 다음과 같이 값을 직접 전달할 수 있다고 생각했습니다

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


위는 가장 간단한 2차원 배열

입니다.

위 예를 작성하는 또 다른 방법:

코드 복사 코드는 다음과 같습니다.

var b=[];

b[0]=[1,2];//배열 [1,2]를 b 배열의 요소로 b 배열에 전달

경고(b[0][1]) //2


위의 b[0]=[1,2] 를 사용할 수 있음을 알 수 있다
코드 복사 코드는 다음과 같습니다.

for(var a=0;a

tArray[a]=[ matArray[a],addArray[a] ]; 위의 예에서 ()가 []로 변경되어 2차원 배열이 성공적으로 형성되었습니다.

};


요약: 방법 3:
코드 복사 코드는 다음과 같습니다.

for(var a=0;a

tArray[a]=[ aArray[a],bArray[a],cArray[a]] dArray[a],eArray[a]

를 추가할 수도 있습니다.

};


이러한 상황은 여러 배열을 알고 2차원 배열로 결합한 경우에 적용 가능합니다

JS가 다차원 배열을 생성합니다

 <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>
로그인 후 복사

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿