[javascript] Array 객체 - 배열
by mini_min[javascript] Array 객체 - 배열
✔️ Array 객체
: 일련의 값들을 저장할 수 있는 배열을 생성할 때 사용하는 리스트 형태의 고수준 객체다.
: 배열의 각 요소는 배열의 이름과 인덱스로 접근하며, 인덱스는 0부터 시작한다.
📓 특징
: 타입이 고정적이지 않다. 즉, 같은 배열에 있는 원소의 타입이 서로 다를 수 있다!
: 32비트 인덱스 사용
: 크기가 동적이다 (자유자재)
: 배열을 생성하거나 크기가 변경되어 다시 할당하더라도 배열의 크기를 다시 선언할 필요 없다 ❌
: 모든 배열은 객체다! 즉, 객체 프로토타입으로부터 속성들을 상속 받은 객체다.
: 배열 리터럴에서 빠진 부분은 undefined 가 된다.
✔️ Array 객체 생성
1) 배열 리터럴을 이용한 1차원 배열
//------------------------------
// 배열 리터널을 이용한 1차원 배열 생성
var a1 = []; // 빈 배열 알아서 늘어남
var a2 = [10,20,30];
var a3 = [10,20,30,]; // 마지막에 컴마
var a4 = [10,20,,30]; // 중간에 컴마
console.log(a1.length); // 0 배열 길이가 없어서 lenght: 배열의 요소 수
console.log(a2.length); // 3
console.log(a3.length); // 3, 마지막 , 는 무시
console.log(a4.length); // 4. 10,20,undefined,30
console.log(a2[0]); // 10, 배열의 첨자는 0 부터 시작
console.log(a2[2]); // 30. 배열의 첨자는 0 부터 시작
console.log(a2[4]); // undefined, 첨자가 요소수-1 보다 크면 undefined
💡 마지막 콤마는 무시하고, 중간 콤마는 undefined 로 본다.
2) Array() 생성자를 이용한 1차원 배열
//-----------------------
//Array() 생성자를 이용한 배열 생성
var b1 = new Array();
var b2 = new Array(5); // 크기가 5인 배열. 모든 요소는 undefined 값을 가짐
var b3 = new Array(3, 5); // 생성자의 인자가 2개 이상이면 초기값. 크기가 2인 배열
console.log(b1.length); //0
console.log(b2.length); //5
console.log(b3.length); //2
console.log(b3[1]); //5
✔️ Array 객체 2차원 배열 생성
✨ 2차원 배열은 열과 행이 있는 공간에 데이터를 저장한다.
var a = new Array(2); // 행수
a[0] = new Array(3); // 0행의 열수
a[1] = new Array(3); // 1행의 열수
console.log(a.length); // 2
console.log(a[0].length); // 3
//배열 리터널을 이용한 2차원 배열
var b = [[1,2,3], [10,20,30]];
console.log(b.length); //2
console.log(b[0].length); //3
console.log(b[1].length); //3
console.log(b[1][2]); //30
✔️ 배열 순회 (iterator)
1) for 문을 이용한 순회
var a = [10,20, , 40, 0];
// 배열 처음부터 끝까지 순회하기
for(let i=0; i<a.length; i++){
console.log(a[i]); // 10 20 undefined 40 0
}
console.log('-----------')
for(let i=0; i<a.length; i++){
if(a[i]) {
console.log(a[i]); // 10 20 40
}
}
2) for ~ of 문을 이용한 순회
var b = [10,20,30];
for(let n of b){ //ES6 추가된 컬렉션 반복 구문
console.log(n); //10 20 30
}
3) for ~ in 문을 이용한 순회
in으로 순회하면, 첨자만 반환해서 b[n] 으로 명시해야 값이 나온다.
for(let n in b){ //첨자만 반환
console.log(n); // 0 1 2
}
console.log('-----------')
for(let n in b){ //첨자만 반환
console.log(b[n]); // 10 20 30
}
'JavaScript' 카테고리의 다른 글
[javascript] 배열 관련 메소드 - indexOf(), join(),reverse() (0) | 2022.09.21 |
---|---|
[javascript] 배열 - 새로운 요소 추가 / 삭제 (1) | 2022.09.21 |
[javascript] Number 객체 / Math 객체 (0) | 2022.09.20 |
[javascript] Date 객체 (0) | 2022.09.20 |
[javascript] 문자 리터널 / String 객체 (0) | 2022.09.20 |
블로그의 정보
개발자 미니민의 개발로그
mini_min