내가 정말 까먹기 싫고 헷갈리기 싫어서 다시 정리하는 화살표함수 사용법 & 함수의 타입

Suxxzzy.log·2021년 12월 14일
0

화살표함수 사용법

화살표함수는 ES6이후 사용하고 있는 문법으로 함수 키워드를 적지 않아도 된다는 장점이 있다!(직접 써 보니 가독성도 더 좋은 것 같다고 생각한다)

기본 규칙 다시 정리
0. function 키워드를 생략한다. 보통..변수에 할당하는 형태로 사용하기 때문에, 클로저로 사용이 가능하다는 특징이 있다.
1. 함수의 body에 리턴문 한줄만 존재한다면 {}와 return을 제거한다
꼭 둘 다 제거해줘야 한다. {}만 쓰게 되면 undefined를 리턴한다.
2. body가 여러 줄인 경우에는 {}와 return을 둘 다 써야 한다.
3. 함수의 parameter가 하나뿐인 경우에는 ()를 생략해도 좋다. 단 여러개일 때는 생략할 수 없다

형태

//함수선언식
function calculateDistance(speed, time){
  let distance = speed * time;
  return distance;
}

//화살표함수
const calculateDistance = (speed, time) => {
  let distance = speed * time;
  return distance;
}

함수의 타입은 object? function?

아고라스테이츠에서 자주 묻는 질문 답변을 읽어보았다.
자료형은 primitive type과 reference type으로 나누어지는데,
reference type에는 object, array, function 등이 있다고 한다.
그런데 다음의 코드를 실행하면, function이라고 나온다고 한다.

typeof function // function

이것은 함수가 object의 subtype이기 때문이다. 이것의 의미는, 함수는 객체 중에서도 다른 함수의 인자로 전달이 가능하고(callable object), 다른 함수에 의해 리턴되기도 하고, 함수를 인자로 받을 수 있는 일급 객체라는 것이다.
배열의 타입이 객체인 이유는 객체처럼 인덱스라는 키로 element들을 관리하고 있기 때문이다.

.
.
.
기수이동 하고 둘째날, 전날 밤에는 정말 오만가지 생각이 다 들었다.
진짜 그만해야 하나라는 생각까지 들었다.. 마음이 여전히 복잡하다.

profile
몫을 다하는 사람

0개의 댓글

관련 채용 정보