배열 기초( 배열은 원시 타입이 x)
- 배열에서 사용되는 다음 용어에 대해 정확히 이해할 수 있다.
- index, element, length
- index -> 각 각 주소 이름
- element 각 값
- arr[0], push,
- pop : 마지막 값을 없애는 매서드
- index, element, length
- 배열에서 특정 인덱스(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 |