2013-06-25 2 views
-1

2 차원 배열 albumPhotos[x][y]이 있습니다. 행은 photoalbums이고 열은 links to photos입니다.javascript에서 2 차원 배열의 열 수를 얻는 방법은 무엇입니까?

이제 모든 photoalbum이 어레이의 모든 rowcolumns의 수가 다른 것을 의미 photos 다른 번호를 갖는다.

이 배열의 모든 행의 길이를 확인하려고하는데, 이는 행마다 몇 개의 열이 있는지를 의미합니다. 어떻게 자바 스크립트에서 할 수 있을까요?

for(var i=0; i< numberOfRows ; i++) 
    for(var x=0; x < albumPhotos[i].length; x++) ... 

을하지만 분명히이 자바 스크립트에서 잘못된 명령은 다음과 같습니다

나는 시도했다. 그럼 난 이런 걸 시도 :

for(var i=0; i< numberOfRows ; i++) 
    for(var x=0; x < albumPhotos.rows[i].cells.length; x++) 

하지만 다시 잘못된 것 같습니다. 이 html 테이블 및 배열에 대한 생각합니다.

아이디어가 있으십니까?

+0

왜 외부 루프의 각 반복에서 변수에'albumPhotos [i] .length'를 추가하지 않습니까? – Bojangles

+0

그게 문제를 해결할 방법을 모르겠다. 내가 for 루프를 사용하면 오류가 발생한다. 전에 변수를 사용했다면 변경 될까? 올바른 구문입니까? –

+0

Uncaught TypeError : 정의되지 않은 'length'속성을 읽을 수 없습니다. –

답변

2

현재 행의 .length 만 확인하면됩니다.

var numberOfRows = albumPhotos.length; 

for(var i=0; i < numberOfRows ; i++) 
    console.log(albumPhotos[i].length); 

그리고 당신이 옳은 것은 두 번째 예는 테이블 요소가 아닌 배열입니다.

+0

albumPhotos는 2 차원 배열 인 albumPhotos [x] [y]입니다. 모든 행은 앨범이며이 행의 모든 ​​열은 사진에 대한 링크입니다. 그래서 내 질문은 어떻게 2 차원 배열의 각 행의 길이 (예 : 열의 수)를 계산했다. –

+0

@ JohnyJaz : 맞아. 이것이 바로 이것이하는 일입니다. 당신이 Arrays를 가지고 있고 당신은 실제로 Object를 가지고 있다고 말하지 않는다면 말입니다. 데이터 샘플을 제공하지 않으므로 귀하의 설명에 전적으로 의존하고 있습니다. –

관련 문제