배열 : 여러개의 값을 모아놓은 것
: 대괄호 사용해 생성후 쉼표(,)로 구분
: 배열 내부에 있는 값을 요소 - [요소, 요소, 요소, 요소]
ex) const A = [1,"안녕",true,[2,3,4]]
a => (4) - 요소 개수 / [1,"안녕",true,[2,3,4]]
인덱스 : 요소의 순서 / 배열[인덱스]
const num = [1,2,3,4,5]
num[0] : 1
num[1+1] - num[2] : 3
num[2*2] - num[4] : 5
배열 요소 개수 (length 속성 사용) / 배열.length
ex)
const a = [1,2,3,4,5,6,7,8]
a.length / 8개 // a[a.length - 1] - a[7] : 8값이 나옴
배열 뒷부분에 요소 추가 / push() 메소드 사용
배열.push(요소)
ex)
const daylist = ['기상','공부']
daylist.push('숙제')
daylist = ['기상','공부','숙제']
배열의 특정 위치에 요소 추가/제거 / splice() 메소드 사용
추가 : 배열.slpice(인덱스, 0, 추가할 요소)
삭제 : 배열.splice(인덱스, 인덱스 기준으로 제거할 요소의 개수)
ex)
const x = [1,3,4]
추가 : x.splice(1,0,2) -> [1,2,3,4] // x라는 배열에 1번째 인덱스부분에 제거는 0개 2라는 숫자를 추가해줌
삭제 : x.splice(1,1) -> [1,4] // x라는 배열에 1번째라는 인덱스기준으로 1개 삭제
값으로 요소 제거 / indexOf() 메소드 사용
const 인덱스 = 배열.indexOf(요소)
배열.splice(인덱스,1)
ex)
const x = ["사과","감","배"]
const index = x.indexOf("배")
x.splice(index.1)
x = ["사과","감"]
크기 : 기본 자료형 < 복합자료형
기본 자료형 : 숫자, 문자열, 불 / 스택에 저장
복합 자료형 : 배열, 함수, 객체 / 힙에 저장

비파괴적 처리 : 처리 후 원본 내용이 변경되지 않음
const a="안녕"
const b="하세요"
const c = a+b
c = "안녕하세요"
파괴적 처리 : 처리 후 원본 내용이 변경됨
const a=[1,2,3]
a.push(4)
a = [1,2,3,4] 원본 내용이 변경됨!