인프런 커뮤니티 질문&답변

지호손님의 프로필 이미지
지호손

작성한 질문수

[리액트 2부] 고급 주제와 훅

[3.3장 부수효과 훅] 3.3.2 지연 실행

[3.3장 부수효과 훅] 훅을 만드는 과정 중 드는 궁금증

작성

·

362

1

리액트 훅들을 직접 구현하는 과정을 보고 있습니다.

 

크게 다른 부분들은 어려움은 없는데 사소한 궁금증이 있습니다.

MyReact 컴포넌트 내부에 훅을 구현할 때 arrow function이 아닌 function ... () { ... } 표현으로 함수를 구현하는 특별한 이유가 있을까요?

답변 2

1

김정환님의 프로필 이미지
김정환
지식공유자

특별한 이유는 없습니다. 둘 간의 차이를 의도적으로 고려해야한다면 각 각 구분해서 사용하는데요, 여기서는 화살표 함수, 일반 함수 무엇이든 사용해도 무방합니다.

참고로 리액트에서는 일반함수를 많이 사용했네요.

0

지호손님의 프로필 이미지
지호손
질문자

감사합니다!

강의를 보다보면 그 또한 이유가 있지않을까하는 궁금증이 생겨서 질문했습니다. 🙂

 

JS 기초를 공부할 시절에 arrow function이 this에 대한 고민과 그외 몇가지 property를 덜 가지고 있어서 arrow function을 지향하는게 맞다는 생각을 많이 가지고 있었는데 그외 장점이 뭐가 있을까 싶네요.

김정환님의 프로필 이미지
김정환
지식공유자

화살표 함수의 장점이 있긴하지만 저는 이것만 사용하지는 않습니다.

어떤 경우에는 일반 함수를 사용하는데요. 예를 들어 클래스 메소드나, 객체 함수를 정의할 때는 읽기전용의 일반 함수를 사용합니다. 화살표 함수로 함수 표현식을 클래스 멤버변수로 지정하면 다른 값으로 변경할수 있기 때문입니다.

근데 사실은 대부분 일반함수, 화살표 함수를 명확히 구분해서 사용하지는 못합니다. 단 각 문법의 특징을 파악하고 있고 특정 상황에 맞게 사용하는 게 중요하다고 생각합니다.

지호손님의 프로필 이미지
지호손

작성한 질문수

질문하기