코드스테이츠

11일차...(배열)

lap_mu 2022. 11. 3. 22:03

오늘은 배열을 배웠다. 음... 배우기 전에도 조금씩 배열을 써먹었던거 같다. 코플릿 문제 풀면서 메서드를 많이 했갈렸다.

 

배열

let arr = [1, 2, 3, 4]; //배열

arr[0] === 1; //index는 0부터 시작
arr[1] === 2;

arr[0] = 10; //index 0인 요소를 10으로 변경 arr = [10, 2, 3, 4];
  • 순서가 있는 값
  • 대량의 데이터를 쉽게 다룰 수 있다.
  • 배열의 순서를 index라 하고 index의 값을 요소라고 한다.
  • [](대괄호)안에 요소를 넣고 각 요소는 쉼표로 구분한다.
  • index를 이용해 요소를 조회할 수 있다.
  • 요소의 변경은 할당과 같은 방식이다.

 

배열의 길이

arr.length  // arr배열의 길이, arr이 위 예와 같을 경우 arr.length는 4

 

배열의 수정

let arr = [1, 2, 3, 4];

arr.push(5) // arr = [1, 2, 3, 4, 5]

arr.pop() // arr = [1, 2, 3, 4]

arr.shift() // arr = [2, 3, 4]

arr.unshift(1) // arr = [1, 2, 3, 4]
  • arr.push()는 배열 마지막에 ()안의 요소를 넣는다.
  • arr.pop()은 배열 마지막의 요소를 제거한다.
  • arr.shift()는 배열 처음의 요소를 제거한다.
  • arr.unshift()는 배열 처음에 ()안의 요소를 넣는다.

배열의 판별

Array.isArray(arr)

arr.indexOf()

arr.includes()
  • Array.isArray()은 ()안이 배열일 경우 true, 배열이 아닐 경우 false이다.
  • arr.indexOf()는 ()안의 값이 배열 요소에 있는지, 있으면 몇 번째 index에 있는지 알 수 있다. 없다면 -1
  • arr.includes()는  ()안의 값이 배열 요소에 있으면 true, 없으면 false이다.

 

코플릿 하면서 배운 것들

  • 얕은 복사(값의 주소만 복사), 깊은 복사(값을 복사)
  • slice, splice 차이
  • 의사코드 꼭 쓰기