3-5. 주석과 메서드 바인딩 강의 중 화살표 함수와 기존 함수 선언의 this
241
작성한 질문수 2
안녕하세요 선생님.
좋은 강의 잘 듣고 있습니다.
강의에서 화살표 함수와 this를 설명하시면서 하신 말씀이 잘 이해가 가지 않아 이렇게 질문 남깁니다.
기존 함수의 형태로 선언 시에 this.onSubmitForm = this.onSubmitForm.bind(this) 등의 코드를 따로 선언해주어야하며, 이를 화살표함수에서 자동으로 해준다고 말씀하셨습니다.
제가 화살표 함수에 대해서 배울 때에는 따로 this를 바인딩 하지 않고 화살표함수보다 한단계 외부에 있는 this를 그대로 가져와서 사용한다고 배웠고 더불어, 기존 함수 선언에서의 this 는 전역 객체를 말한다고 알고 있습니다.
자동으로 해준다기보다는 기존 함수 선언 방식에서는 this가 전역 객체로 선언되어있기때문에 따로 bind를 하는 과정이 필요하고, 화살표 함수는 this 바인딩을 따로 하지 않기 때문에(전역객체가 아니라 한단계 외부에 있는 this를 그대로 사용할 수 있기에) 해당 과정이 생략될 수 있는 것이 아닌가 하는 생각이 들었습니다.
혹시 제가 잘못 이해하고 있다면 올바르게 고쳐주시면 감사하겠습니다.
질 좋은 강의를 무료로 올려주셔서 다시 한 번 감사합니다!
좋은 하루 되세요!
답변 1
1
이걸 읽어보세요.
자동으로라고 표현한 것은 화살표 함수는 상위 스코프의 this를 자동으로 바인딩해주는 거라서 그렇게 표현한 겁니다.
npm run dev 실행 시 포트가 안뜨는 문제
0
211
2
timeouts.current를 useEffect 의 input값으로 넣었을때
0
89
2
렌더링 테스트 코드 (Hooks)
0
80
1
Cannot find package 'react-refesh' 이런 에러 뜨시는 분들 보세요.
0
154
1
해당 에러 뜨는 분들 보세요. "Uncaught TypeError: ReactDom.createRoot is not a function"
1
193
1
강사님 레포지토리에서 코드 복사 시 master 브랜치 말고 react18 브랜치꺼 복붙하세요ㅠㅠ
0
99
1
useMemo와 useCallback 사용 시기
0
208
2
onRightClickTd가 작동을 하지 않습니다.
0
228
1
action.type 불러오는 방식
0
222
2
onClickRedo 질문
0
172
1
const Try = require(./Try) 빨간줄
0
249
1
npx webpack 실행시
0
316
1
지뢰찾기 강좌에서 빈칸들 한번에 열기 파트에서 여쭤보고싶은부분이 있어서 글 올립니다.
0
236
1
강좌에서 다루지 않은 기능들은 어떻게 학습하면 좋을까요?
0
311
1
react devtool이 enable 않됩니다.
0
532
2
React 랜더링이 되지 않습니다.
0
414
2
비동기로 동작하는 setState에 대해서
0
332
1
npm run dev 할 때 에러발생
0
480
2
memo, PureComponenet, shouldComponentUpdate 관련 질문
0
207
1
devMiddleware의 필요성
0
354
1
리액트에서 화살표 함수를 사용해야하는 이유
0
937
2
path.join관련질문
0
283
2
2-9. 웹팩 데브 서버와 핫 리로딩 설치과정 시 에러
0
376
1
next.js 에서 이와 비슷한 예제를 돌리고있는데 react랑 달라서 질문 드립니
1
494
4





