Const or Function

양선우·2024년 10월 23일
0

Code_Refacture

목록 보기
7/7

함수 선언문 ( Function )

interface SampleProps {
  props: string;
}  
export default function sample1({ props }: SampleProps) {
  return;
}

특징

호이스팅 : 함수 선언 전체가 호이스팅됨

사용 시점 : 어디서든 호출 가능

화살표 함수 사용 : X

this 바인딩 : 동적으로 바인딩

코드 스타일 : 전통적인 함수 선언 방식

함수 표현식 ( Const )

interface SampleProps {
  props: string;
}  
export const sample2 = ({ props }: SampleProps) => {
  return;
};

특징

호이스팅 : 변수 선언은 호이스팅되지만 초기화되지 않음

사용 시점 : 선언 이후부터 호출 가능

화살표 함수 사용 : O (화살표 함수 사용 가능)

this 바인딩 : 주변 컨텍스트를 사용한 바인딩

코드 스타일 : 함수 표현식 및 클로저/콜백에 유용

그래서 무엇을 선택해야 하는가?

전역적으로 사용하거나,

호출 시점에 제약이 없는 경우 function 함수 선언문을 사용할 수 있음.

컴포넌트 선언, 클로저 또는 콜백 함수, 혹은

화살표 함수의 this 바인딩 특성을 활용하고자 한다면

const 함수 표현식을 사용하는 것이 좋음

profile
코딩이 하고 싶은 사람

0개의 댓글