본문 바로가기

코드스테이츠

코드스테이츠 2주차 배열

배열 기초( 배열은 원시 타입이 x)
  • 배열에서 사용되는 다음 용어에 대해 정확히 이해할 수 있다.
    • index, element, length
      • index -> 각 각 주소 이름 
      • element 각 값 
    • arr[0], push,
      • pop : 마지막 값을 없애는 매서드
  • 배열에서 특정 인덱스(index)의 요소(element)를 조회하거나, 변경할 수 있다.
  • 배열의 요소가 배열인 이중 배열을 이해할 수 있다.
  • 이중 배열의 요소를 조회하거나 변경할 수 있다.
배열의 반복
  • 배열의 요소를 반복적으로 불러오는 방법을 이해하고 사용할 수 있다.
  • 배열의 각 요소에 대하여, 반복하는 코드를 실행시킬 수 있다.
    • 기본적인 for 문 for (let i = 0; i < 5; i++) 을 응용하여 다양한 for문을 만들 수 있다.
    • 반복문에 조건문을 응용하여 특정 조건에서만 코드를 실행시킬 수 있다.
    • 이중 반복문이 무엇인지 이해하고 활용할 수 있다.
  • 배열과 반복문을 활용하여 실생활에서 접할 수 있는 간단한 문제를 해결할 수 있다.
  • 문자열과 배열의 타입 변환을 돕는 메소드를 알고 있다.
    • 띄어쓰기 (" ")로 문자열을 구분하여, 배열로 변경할 수 있다. str.split(" ").join(" ")
    • 문자열을 요소로 가지는 배열을 띄어쓰기 (" ")로 구분한 문자열로 변경할 수 있다.
배열 기초 메소드
  • 배열 요소(element)를 조회할 수 있다. bracket notation
  • 배열을 복사, 분리하는 법을 이해할 수 있다. slice, splice
  • 변수, 데이터, 또는 특정 값이 배열인지 아닌지 판별할 수 있다. Array.isArray
  • 배열의 요소(element)를 추가 및 삭제할 수 있다. push, unshift, pop, shift
    • push는 뒤에 추가 pop 은 제거 unshift는 앞쪽 추가 shift 앞쪽 제거
  • 배열의 길이를 구할 수 있다. length
  • 변수, 데이터, 또는 특정 값이 배열에 포함되어 있는지 확인할 수 있다. indexOf, includes
  • console.table를 하면 테이블 형태로 시각화 하여 보여준다
  • indexOf :   배열.indexOf('값')은 이 값이 몇 번째에 있는지 찾아준다. 
    • 그 값은 있으면 순서 없으면 -1 이 나온다
    • 그렇다면  존재의 여부를 확인하고 싶으면?? array.indexOf('pp')가 있으면 !==-1  그 결과는 true가 나온다.
    • 하는 방법 1. indexOf , 함수(hasElement), include( 호환성 문제)

 

배열 잘 사용하는 매서드 

 

    1. push() 메서드는 배열의 끝에 하나 이상의 요소를 추가하고, 배열의 새로운 길이를 반환합니다.

    2.shift() 메서드는 배열에서 첫 번째 요소를 제거하고, 제거된 요소를 반환합니다. 이 메서드는 배열의 길이를 변하게 합니다.

 

배열의 사용(언제 사용할까?)

 

1. 예를 들어 "나는 커피를 사먹었다." 라는 문장이 있어 이 문장은 보면 알겠지만 빈칸을 기준으로 단어들이 나뉘었지?

그럴 때   빈문자열일 경우 : 배열.split(" ")   ,가 기준일 경우 : 배열,split(',') 이렇게 쓰면 이 기준에 따라 나뉘게 되는거지.

 

2. 이번에는 "banana"라는 문자열이 있어 이를 하나씩 뽑아서 분석해보고싶다는 거지... 그럴 땐 

===> 1. 빈 문자열을 만들고 2. 빈 문자열에 .push를 넣어서 하나씩 진행하면 돼. 여기서 push는 배열의 끝에 요소를 추가하는 매서드야. 이것의 리턴 값은 길이를 return 하니 참고하자!!.

 

 

이 변수가 배열인지 아닌지 궁금할 때 쓰는 방법

1. arr.length === 0 true or false

 

2. Array.isArray(a) ==> true or flase 

 

 

split method를 하는 이유

-split 메소드의 활용법을 숙지하기 위한 문제입니다. split 메소드는 전달인자로 들어가는 string을 기준으로 끊어 배열에 담아주고 그 배열을 리턴하는 메소드입니다.
-splice처럼 원본 배열을 변경하는 메소드를 mutator method 혹은 mutable method라고 부릅니다. 다음 링크에서는 배열 메소드가 원본 배열을 변경하는지, 하지 않는지에 대한 정보를 제공하니 메소드 사용 시 참고 부탁 드립니다.
https://doesitmutate.xyz/

우리가 비정형화된 데이터를 받았다고 하자 

목적: 어떤 회사의 리뷰를 분석한다고 하자.정형화된 데이터로 만들기 위해서

1. 기준을 잡아 데이터를 분리한다.  

2. 이 물건 너무 좋아요!! 라는 비정형화된 데이터를 

감정 부분만 분리해서 분석한다면 효과적으로 어떤 형용사가 나왔는지 분석이 가능하다. 그렇기 때문에 우리는 빈 배열 " "를 기준으로

분리해서 분리한다.

 

배열의 위치 변경 

why: 오래된 데이터는 뒤로 빠지고 신규 데이터를 앞쪽으로 넣으면 반복해서 그 데이터를 찾을 때 cpu 의 소모량을 줄일 수 있다.

문제 배열과 요소를 입력받아 주어진 요소를 배열의 맨 앞에 추가하고 해당 배열을 리턴해야 합니다.

입출력 예시

// 보기의 코드를 여기에 입력하면, 아래의 결과가 나와야 합니다.

let output = addToFront([1, 2], 3);

console.log(output); // -> [3, 1, 2]

 

unshift는 원본 배열을 변화시키기 때문에 arr를 리턴하면 unshift로 element 가 추가된 배열이 리턴됩니다.

 

addToFront.unshift(3)

 

 

 

'코드스테이츠' 카테고리의 다른 글

객체  (0) 2021.08.03
객체  (0) 2021.08.02
코드스테이츠 2주차 Git  (0) 2021.07.29
코드스테이츠 2주차 querySelector ,CLI  (0) 2021.07.26
코드스테이츠 1주차 HTML  (0) 2021.07.23