Array 함수 모음
18062 단어 JavaScriptJavaScript
push/pop/unshift/shift : 원소 추가/제거
- 뒤에 추가
배열.push("원소1", "원소2")
* 재할당 할 필요 없음! 재할당 하면 버그가 생길 수 있으니 ㄴㄴ- 앞에 추가
배열.unshift("원소1","원소2")
--> 변수에는 새로운 배열 반환
- 마지막 원소 제거
let one = 배열.pop()
- 첫번째 원소 제거
let one = 배열.shift()
--> 제거된 원소를 변수로 반환
indexOf : 인덱스 값 반환
arr.indexOf(원소)
- 없는 원소를 넣으면 -1 반환
includes : 존재 여부
arr.includes(원소)
- true/false 반환
splice : 원소 삭제/교체/추가
arr.splice(원소가공을 시작할 인덱스 위치, 제거할 원소갯수, 추가해줄 원소)
- 추가해줄 원소 여러개 가능
- 제거된 원소를 배열로 반환
slice : 원소 자르기
arr.slice(자르기 시작할 인덱스, 자르기를 종료할 인덱스)
- 종료할 인덱스는 미포함
- 잘라온 원소를 배열로 반환
concat : 배열 합치기
arr1.concat(arr2,arr3)
arr.concat(추가할 원소)
- 원소, 배열 섞어서 추가 가능
배열 변형
map : 반복문
- 배열의 모든 원소에 대해 함수를 호출한 결과를 모아 새로운 배열 반환
(기존 객체 수정 X)- 반복문으로 자주 사용
- 메서드 안의 함수의 파라미터(매개변수)는 num의 모든 원소들이 한번씩 들어감
arr.map((arr_item)=>{
// 모든 배열의 원소에게 반복실행할 코드
})
예시
let num = [1,2,3,4,5]
let newNum = num.map(num_item => num_item*3)
//결과
newNum = [3,6,9,12,15]
sort : 정렬
- 정렬 후 해당 배열 반환
- 기본적인 정렬 순서: 문자열의 유니코드
(숫자는 문자열로 변환: "80" < "9")- compareFunction(a, b)이 0보다 작은 경우 a를 b보다 낮은 색인으로 정렬
arr.sort(()=>{
//비교기준 함수
//없을시엔 기본적인 정렬에 따라 정렬됩니다.
})
/* 숫자열에서 비교기준 함수 */
//오름차순
arr.sort((a,b)=>{
return a-b
})
//내림차순
arr.sort((a,b)=>{
return b-a
})
/* 문자열에서 비교기준 함수 */
//오름차순
arr.sort((a,b)=>{
return a < b ? -1 : 1
})
//내림차순
arr.sort((a,b)=>{
return a > b ? -1 : 1
})
reverse : 반전
- 거꾸로
array.reverse()
split : 자르기
- 문자열을 기준으로 잘라서 배열 반환
- (선택)횟수 제한: 입력한 인덱스까지만 배열로 반환
str.split(구분자)
str.split(구분자,횟수 제한)
join : 연결
- 모든 원소를 연결해 문자열로 반환
arr.join("")
arr.join(구분자)
reduce : 누적값
- 각 원소에 대해 함수 실행, 하나의 결과 값 반환
- 총 원소의 합을 구할 때 주로 사용
- 반환값 = 초기값 + 모든 원소의 연산 값
- 초기값이 없으면 default 0번째 인덱스
arr.reduce((누적값, 현재값)=>{
// 현재값+누적값을 리턴
},초기값)
예시
/*배열의 모든 값 합산*/
//1.
var total = [ 0, 1, 2, 3 ].reduce(
( accumulator, currentValue ) => accumulator + currentValue,
0
);
//2.
let arr = [1,2,3,4,5,6,7,8,9]
arr.reduce((acc,cur)=>{
console.log(`누적값 : ${acc} , 현재값 : ${cur}`)
return acc+cur
},10)
> 결과 <
누적값 : 10 , 현재값 : 1
누적값 : 11 , 현재값 : 2
누적값 : 13 , 현재값 : 3
누적값 : 16 , 현재값 : 4
누적값 : 20 , 현재값 : 5
누적값 : 25 , 현재값 : 6
누적값 : 31 , 현재값 : 7
누적값 : 38 , 현재값 : 8
누적값 : 46 , 현재값 : 9
55
reduceRight : 누적값 뒤에서부터
- reduce와 유사
- 현재값이 배열의 끝에서부터 시작
arr.reduceRight((누적값,현재값)=>{
// 현재값 + 누적값을 리턴
})
예시
let arr = [1,2,3,4]
arr.reduceRight((acc, cur)=>{
console.log(`누적값 : ${acc} , 현재값 : ${cur}`)
return acc + cur
} ,20)
> 결과 <
누적값 : 20 ,현재값 : 4
누적값 : 24 ,현재값 : 3
누적값 : 27 ,현재값 : 2
누적값 : 29 ,현재값 : 1
30
Author And Source
이 문제에 관하여(Array 함수 모음), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@e_juhee/Array-function저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)