혼공스 Day 9
Ch 04-1. 배열
배열(array)은 여러 자료를 묶어서 활용할 수 있는 특수한 자료입니다.
배열 만들기
배열은 여러 개의 변수를 한 번에 선언해 다룰 수 있는 자료형입니다.
👉 배열은 대괄호를 사용해 생성하고 내부의 값을 쉼표로 구분
👉 배열 내부에 들어 있는 값을 요소(element)라고 함
e.g. [요소, 요소, 요소, ... , 요소]
> const array = [273, 'string', true, function () { }, {}, [273, 103]]
undefined
> array
(6) [273, 'string', true, ƒ, {…}, Array(2)]
👉 (6) → 요소 개수
[273, 'string', true, ƒ, {…}, Array(2)] → 요소
배열 요소에 접근하기
배열[인덱스]
배열은 여러 개의 요소를 갖기 때문에 일반적으로 배열이름을 복수형으로 짓습니다.
e.g. const numbers = [271, 199, 74, 395]
numbers [1] → 199
배열 요소 개수 확인하기
배열.length
배열 뒷부분에 요소 추가하기
A. push() 메소드를 사용해 배열 뒷부분에 요소 추가하기
👉 배열 뒷부분에 요소를 추가할 때는 push() 메소드를 사용합니다.
배열.push(요소)
B. 인덱스를 사용해 배열 뒷부분에 요소 추가하기
C. length 속성을 사용하여 배열 마지막 위치에 요소 추가하기
배열 요소 제거하기
A. 인덱스로 요소 제거하기
배열의 특정 인덱스에 있는 요소 제거
👉 splice() 메소드
👉 itemsA.splice(2,1) → 배열의 2번째 인덱스로부터 1개 요소를 제거
👉 itemsB.splice(3,2) → 배열의 3번째 인덱스로부터 2개 요소를 제거
A. 값으로 요소 제거하기
값을 기반으로 요소를 제거할 때는 배열 내부에서 특정 값의 위치를 찾는 indexOf() 메소드 사용 후,
splice() 메소드를 사용해 제거합니다.
const 인덱스 = 배열.indexOf(요소)
배열.splice(인덱스,1)
👉 [인덱스] 상수는 내가 찾고자 하는 요소가 몇번째에 있는지 찾아준다.
👉 찾은 인덱스에 있는 1개의 요소 제거
배열의 특정 위치에 요소 추가하기
배열.splice(인덱스, 0 , 요소)
👉 2번째 매개변수에 0을 입력하면 아무 것도 제거하지 않음
👉 3번째 매개변수에 추가하고 싶은 요소를 입력
자료의 비파괴와 파괴
비파괴적 처리 : 처리 후에 원본 내용이 변경되지 않습니다.
👉 c를 만든 후에도 원본 내용이 변하지 않음
파괴적 처리 : 처리 후에 원본 내용이 변경됩니다.
👉 push() 메소드 실행한 뒤 array의 값이 원본과 다름
👉 파괴적 처리는 메모리를 절약할 수 있지만, 원본이 사라짐
🧐 오늘의 질문 & 생각
Q.
A.