메뉴 건너뛰기

조회 수 11110 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

▶▷ 알아두면 좋은 것들

 Document.write(), 배열에 대한 이해

관련글

[자바스크립트] 배열의 리터럴 선언, 또다른 배열 선언 방법!

 

 이 글은 배열에 대한 개념을 이해하고 있다고 가정하고 쓰기 때문에, 배열에 관한 내용은 다른 글을 참고해 주세요.

 

 자바스크립트에서 배열(Array)을 사용하기 위해서는 자바와는 비슷하지만 다른 방식으로 접근을 해야하는데요~

특히, 다차원 배열 즉, 2차·3차 배열을 선언할 때 주의깊게 봐야합니다.

 

 우선, 1차원 배열을 선언하는 방법에 대해서 알아볼게요.

1. var arr = new Array(); 

2. var arr = new Array(3);

3. var arr = new Array("가", "나", "다", 3); 

 

 1차 배열을 선언하는 방법중에 첫번째 방법은, 가장 단순한 방법이기도 하고 많은 장점을 갖는 선언 방법입니다.

자바(JAVA)에서는 기본 배열을 선언할 시에 배열의 크기가 고정되어 있어서, 추후에 배열요소를 추가함에 있어서 배열의 길이가 바뀔때 새로운 길이 만큼의 배열을 선언하고 거기에 기존의 배열을 복사하는 형태로 배열을 늘일 수 있겠습니다.

이 단점을 보완한 것으로 여러 컬렉션이 있는데요. 그중에서 자바스크립트에서 지원하는 방식은 Vector와 ArrayList와 유사하네요.

 즉, 자바 스크립트에서 지원하는 방식은 요소에 어떤 타입이 들어가든 유동적으로 배열의 길이를 늘일 수 있습니다
배열의 크기와 상관없이 요소만 추가하면 된다는 거죠. 편합니다 편해 ^^ 조금더 알아보자면 연관배열도 있겠습니다만.. 이 글에서는 범위를 벗어나므로~

 

 그래서 다음과 같이 사용할 수 있겠습니다.

var arr = new Array();   
arr[0] = "가";
arr[1] = "나"'

 

두번째, 세번째 방법은 배열의 크기를 미리 정해줌과 동시에 세번째는 초기화가 선언과 동시에 이루어지는 방법입니다.

 

 그렇다면! 다차원 배열의 선언은 어떻게 하는 것일까요?

원래 자바스크립트에서는 다차원 배열을 지원하지 않지만, 요소안에서 다시 배열을 선언해주는 방법으로 다차원 배열을 구현할 수 있습니다. 다음과 같이 가능합니다!

1. 선언시 

var arr = new Array();

arr[0] = new Arry();

 

2. 사용시

arr[0][0] = "가";

arr[0][1] = "나";

 

3. 3차 배열 선언시

arr[0][0] = new Array();

 여기서 중요한건 각 요소마다 배열을 다시 선언 해줘야 한다는 점입니다.

길이가 길 때에는 반복문을 통한 선언이 더 편하겠지요?

 

  그렇다면 여기서 간단히 다차원 배열 선언을 통한 예제를 잠시 들어볼까해요.

2차원 배열을 만들고, for문을 통해서 입력한 데이터가 보일 수 있도록 하겠습니다.

<HTML>

<HEAD><TITLE>자바스크립트를 활용한 다차원 배열 예제</TITLE>

</HEAD>

<BODY>

<SCRIPT language="JavaScript">

 

var arr = new Array();

 

arr[0] = new Array();   //2차배열 선언

arr[1] = new Array();

 

arr[0][0] = "아무개";

arr[0][0] = "24세";

 

arr[0][0] = "홍길동";

arr[0][0] = "125세";

 

for(var i=0; i<arr.length; i++){

for(var j=0; j<arr[i].length; j++){

document.write(arr[i][j]+"<br>");

}

 

</SCRIPT>

</BODY>

</HTML>

 


List of Articles
번호 제목 날짜 조회 수
247 바닐라 JS, ECMAScript 개념 file 2023.01.20 109
246 마우스 오른쪽버튼 , 드래그 선택 차단 2023.01.12 118
245 패스워드, 확인패스워드가 맞는지 체크 2023.01.12 129
244 Node.js와 npm(+ npx)의 개념 2023.01.20 134
243 비동기 작업의 원리 (JavaScript 엔진, Web API, Task Queue, Event Loop) file 2023.01.20 138
242 개발자도구 F12키 막기 file 2023.01.12 169
241 페이지 이동 2021.03.26 190
240 getYear(); 크롬, 파이어폭스 에서 제대로 작동 안하는 문제 2021.03.26 197
239 default 매개변수(매개변수 기본값) 2021.03.26 199
238 자주쓰는 것들 2021.03.26 203
237 split, join, replace, replace_all 2021.03.26 204
236 폼안에 태그명, 함수명 같을때 오류 2021.03.26 214
235 현재 날짜, 시간 ( Month + 1 에 대해서 ) 2021.03.25 218
234 Date 객체로 원하는 날짜, 시간 표현하기 2021.08.20 223
233 Javascript - 입력한 년, 월의 마지막 날짜 구하기 2021.03.09 224
232 3자리 마다 쉼표만 찍어주는 number_format 함수 2021.03.26 225
231 오브젝트 속성 2021.03.25 237
230 월의 마지막 날짜 계산하기 2021.08.20 242
229 대소문자 변경 (대문자를 소문자로, 소문자를 대문자로) 2021.08.20 261
228 Javascript - form태그 내부 ajax처리시 2번 전송되는 현상 2021.03.09 268
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved