배열 method
arr.toString() : 문자형으로 변환.
arr.splice(index, count, value1, vaule2, ...) : index부터 count 개수 만큼
요소를 삭제하고 그자리에 value들을 차례대로 주입.
arr.slice(start,end) : start ~ end-1 index만큼 요소를 복사하여
새로운 배열에 반환. `기존배열 변화없음`.
arr.concat(value1, value2, ...) : 인자들을 push한 새로운 배열을 생성.
인자에 원시값, 배열 둘 다 가능 `배열일 경우 배열끼리 합쳐짐`. `기존 배열 변화 없음`
arr.forEach((item,index,array) => {}) : 배열 전체를 순회하면서
각 요소마다 함수를 실행 item: 각 요소 array: 전체 배열.
arr.map((item, index, array) => {}) : 각 요소를 함수에 따른 새로운 요소로
대체하고 새로운 배열로 반환. `기존 배열 변화 없음`.
arr.indexOf(item, from) : from이후로부터 item과 일치하는 요소의
index를 반환 `index는 from 이후가 아닌 처음부터 계산하여 반환`
*lastIndexOf : 뒤에서부터 찾음. `없으면 -1 반환`
arr.includes(item, from) : 찾으면 true를 반환 없으면 -1 반환
arr.find((item, index, array) => {}) : 함수 조건에 부합하는 요소를 반환
하나만 찾는다. `없으면 undefined`
arr.findIndex((item, index, array) => {}) : index를 반환. `없으면 -1`
arr.sort() : 배열을 사전순으로 정렬 2 > 123 , a > Z, Z > A
숫자 : sort((a,b) => a - b) : 오름차순, b - a : 내림차순
문자열 : a.localeCompare(b) : 내림차순, b.localeCompare(a) : 오름차순
arr.reverse() : 배열 역순으로 정렬
str.split(조건1, 조건2) : 조건 1을 기준으로 문자열을 쪼개어 배열로 만듬
*조건 2는 배열의 length 제한
arr.join(인자) : 배열요소 사이에 인자를 삽입하여 string으로 반환
arr.reduce((acc, item, index, array) => {},[initial]) :
acc의 초기값은 initial이며 배열을 순회하면서 함수를 실행하는데
acc에 값이 누적되어 다음 요소 실행에 반영됨
*arr.reduceRight : 배열의 오른쪽부터 연산
Array.isArray(value) : value가 배열인지 판단함 boolean
arr.some(fn): boolean 배열에 조건을 충족하는 요소가 있으면 true 반환.
arr.every(fn) : 각 배열 요소 전체가 조건을 충족해야 true 반환.
arr.fill(value, start, end) : start 부터 end-1 index까지 value 삽입.
이미 요소가 존재하는 경우 value값으로 대체.
arr.copyWithin(index, start, end) : start부터 end-1까지의 요소를 복사한 뒤
index에 붙여넣는다. `기존 요소가 있을 경우 덮어 씀`