일급객체, 고차함수

남성윤·2022년 7월 21일
0

Code States 학습

목록 보기
16/66

일급 객체

자바 스크립트 내에는 특별한 대우를 받는 일급 객체가 있다.
대표적 일급 객체는 함수로서, JS 내에서 함수는 다음과 같이 특별한 취급을 받는다

  • 변수에 할당할 수 있다.
  • 다른 함수의 전달인자로 전달될 수 있다.
  • 다른 함수의 결과로서 리턴할 수 있다.

함수를 변수에 할당할 수 있기 때문에, 배열의 요소나 객체의 속성값으로 저장할 수 있으며,
데이터 (String, Number, Boolean, Array, Object)처럼 다룰수도 있다.

예를 조금 들자면,

const a = function (num){
	return num * num;
};

const output = a(7);

console.log(output); // ---> 49

const cat = {
  name: 'nabi';
  age: 3;
  cry: function() {
  console.log('~~~')
  }
}

처럼 사용할 수 있다.

고차 함수

내장 고차 함수의 이해

JS 내에는 기본적으로 내장된 고차 함수가 여럿 있는데, 배열메서드중 일부가 대표적인 고차 함수에 해당한다.
이 중 filter, map , reduce에 대해 학습한다.

filter

filter는 모든 요소중, 내가 원하는 값만 필터링하여 반환한다.
필터는 내가 직접 작성해야하며, 함수로 작성하여 인자로 집어넣게 된다.
이 필터에서 나온 배열은 기존 배열을 수정하지 않는다.

map

map은 모든 요소에게 동일한 행동을 준 값으로 반환한다.
filter와 동일하게 내가 직접 작성해야하며, 함수로 작성하여 인자로 집어넣으며,
기존 배열을 수정하지 않는다.

reduce

reduce는 배열을 하나의 값으로 만들어준다.
reduce는 초기값을 정하게 된다. 초기값을 정해주지 않으면 첫번째 값이 초기값이 된다.
이 초기값에서 배열의 값을 진행해나가며 내가 작성한 함수에 대입하여 현재값을 갱신해나가는것이다.

profile
안녕하세요, Blog 2022.06 ~

0개의 댓글