Recent Posts
Recent Comments
Link
Today
Total
05-20 08:40
관리 메뉴

채린씨의 티스토리

[JavaScript] 40. N차원 Array 본문

자료구조, 알고리즘/JavaScript 기초 문법

[JavaScript] 40. N차원 Array

채린씨 2022. 3. 15. 16:35

* N차원 배열

- 배열(Array) 안에 배열이 존재하는 객체

- 2/3차원 지도 정보, RGB를 저장하는 사진 파일 등을 표현할 때 활용 가능

 

* 2차원 배열 예제

- 2차원 배열은 array[N][M]으로 접근 가능하며, 배열 전체를 push(), pop() 가능

let array = [
  [101, 102, 103],
  [201, 202, 203],
  [301, 302, 303],
  [401, 402, 403],
];

console.log(array);
// output: [ [ 101, 102, 103 ], [ 201, 202, 203 ], [ 301, 302, 303 ], [ 401, 402, 403 ] ]

/* length로 2차원 배열의 크기 구하기 */
console.log(array.length); // output: 4 (행의 개수, 12가 아님에 주의!!!)
console.log(array[0].length); // output: 3 (행 별 요소의 개수)

/* 각 요소에 접근 */
console.log(array[0]); // output: [ 101, 102, 103 ] (0번째 행 전체)
console.log(array[0][0]); // output: 101 (0번째 행의 0번째 요소)

/* 행 전체 삭제 */
let popped_element = array.pop(); // 마지막 행 전체 삭제하고 popped_element에 저장
console.log(array); // output: [ [ 101, 102, 103 ], [ 201, 202, 203 ], [ 301, 302, 303 ] ]
console.log(array.length); // output: 3 (행의 개수)
console.log(popped_element); // output: [ 401, 402, 403 ]

/* 요소 하나만 삭제하고 싶다면? */
let popped_element2 = array[0].pop(); // 0번째 행의 마지막 요소 삭제하고 popped_element2에 저장
console.log(array); // output: [ [ 101, 102 ], [ 201, 202, 203 ], [ 301, 302, 303 ] ]
console.log(popped_element2); // output: 103

/* 요소 추가 */
let array_num = array.push([501, 502, 503]); // 행 전체 추가하고 array_num에는 추가된 이후 행의 개수 저장
console.log(array); // output: [ [ 101, 102 ], [ 201, 202, 203 ], [ 301, 302, 303 ], [ 501, 502, 503 ] ]
console.log(array.length); // output: 4 (행의 개수)
console.log(array_num); // output : 4

 

* 2차원 배열 반복문 예제

- 2중 for문을 이용해서 2차원 배열의 각 요소에 접근

let array = [
  [101, 102, 103],
  [201, 202, 203],
  [301, 302, 303],
  [401, 402, 403],
];

for (let i = 0; i < array.length; i++) {
  for (let j = 0; j < array[i].length; j++) {
    console.log(array[i][j]);
  }
} // output: 101 102 103 201 202 203 301 302 303 401 402 403

let recipe = [
  ["strawberry", 50],
  ["banana", 100],
  ["ice", 150],
]; // 자바스크립트는 배열의 각 요소가 서로 다른 자료형을 가질 수 있다!!!

for (let i = 0; i < recipe.length; i++) {
  console.log(`fruit: ${recipe[i][0]}, amount: ${recipe[i][1]}`);
} // output: fruit: strawberry, amount: 50 fruit: banana, amount: 100 fruit: ice, amount: 150

 

 

 

 

드디어 자료구조/알고리즘 JavaScript 기초 문법 이론이 끝났다!! 행복해~~ 

첫 코딩 테스트 전에 기초 문법은 다 보고 싶었는데 다행이다.. 

앞으로의 계획은 HTML/CSS에 집중하면서 남은 자료구조/알고리즘 파트를 조금씩 듣는 것!!

화이탱~!~!

 

* 앞으로 이 카테고리에 올라갈 기본문제들은 저작권 문제 때문에 비밀글로 올라갈 것이다..

 

'자료구조, 알고리즘 > JavaScript 기초 문법' 카테고리의 다른 글

[JavaScript] 기초 문법 총정리  (0) 2022.03.16
[JavaScript] 39. Date  (0) 2022.03.15
[JavaScript] 38. Math  (0) 2022.03.14
[JavaScript] 37. Set  (0) 2022.03.14
[JavaScript] 36. Map  (0) 2022.03.14
Comments