본문 바로가기

자바스크립트/기초

배열 내장 고차 함수

내장 고차함수란?

자바스크립트에는 기본적으로 내장된 고차함수가 있습니다. 그중에서 배열 메소드들 중 일부가 대표적인 고차함수에 해당합니다.

arr.forEach() // 파라미터로 콜백 함수를 받아 주어진 함수를 배열 요소 각각에 대해 실행하는 메서드
//! forEach는 map() 메서드와 비슷하지만 따로 return하는 값이 없다
//! 즉, callback 함수에 의해서 어떤 결과물을 내놓고 싶으면 함수 밖의 변수를 사용해야 한다

arr.find() // 만든 함수의 식이 트루이면 가장 '첫번째' 조건을 출력
arr.filter() // 배열의 요소 중에서 특정 조건을 만족하는 요소를 걸러내 새로운 배열을 만들어주는 메소드

arr.map() // 배열안에 들어있는 모든 요소들을 내가 전달해준 함수를 호출하면서 콜백함수에서 가공되어 리턴되어진 값으로 대체하는 메소드
//! 배열안에 있는 요소들을 우리가원하는 함수를 이용해서 다른 방식의 데이터를 만들고 싶을때 사용하면 되는 Map!

arr.reduce() // 배열에 있는 모든 요소들의 값을 누적하는 함수
//! 내가 원하는 시작점부터 모든 배열을 돌면서 어떤 값을 누적할 때 사용
arr.reduceRight() // 배열의 뒤부터 모든 배열을 돌면서 값을 누적함

arr.sort() // 이전값과 현재값을 비교해서 더 작은순부터 큰수까지 정렬해서 배열로 만들어주는 것
// .sort((a,b)=> a - b) 하면 작은순부터 큰수까지
// .sort((a,b)=> b - a) 하면 큰수부터 작은수까지

arr.some() // 배열의 요소 중에서 콜백함수가 리턴이 트루가 되는 요소가 있는지 없는지 확인해 주는 메소드.
//! 배열에서 하나라도 이 조건에 만족되는 요소가 있으면 true리턴

arr.every() // 배열의 모든 요소들이 충족해야지만 트루가 리턴이 됨
//! 모든 배열의 조건이 만족 되어야 할 때는 every 사용

/*----- 고차함수 아님 -----*/

arr.join() // 배열 안에 있는 모든 아이들을 string으로 전달. 구분자를 안넣으면 자동으로 콤마
arr.reverse() // 배열의 값을 반대로 바꿔줌. 배열 자체를 변화시키는 것!! not immutable
arr.slice() // 배열 복사
arr.splice() // 배열 안의 요소 제거
str.split() // 구분자로 문자열을 배열로 만들어주는 것

 

반응형