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

블루윤님의 프로필 이미지
블루윤

작성한 질문수

웹 게임을 만들며 배우는 React

ref

02:50 input 을 클래스 안에다 선언해주는 것 질문드립니다.

작성

·

180

0

1. input 은 변수인가요? 타입(var 냐 const 냐..)은 뭔가요?

생각해보니 그럼 다른 함수들,, 메서드들은 타입은 뭔가요?

=====

2.  onChange 함수(메서드)와 동등한 위치에 input 이라는게 들어가있는 꼴인데, 자바스크립트 고유 클래스 문법인가요? JSX 문법인가요?

=====

3.  constructor 내부에 this.state 바로 아래에다가 this.input; 이렇게 선언해도 정상적으로 잘 나오던데, 이렇게 생성자 내부에... 선언하면.... 선언한 것과 그 외부에 선언한거는 뭔 차이를 갖나요?

답변 2

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

1. 클래스 속성입니다. this.input이랑 똑같습니다. 변수는 대입하기 전까지는 타입이 undefined입니다. 함수는 타입 자체가 함수(객체) 타입이고요.

2. 추가 질문하신 state = {}로 빼서 만드는 것과 같은 원리입니다. 자바스크립트 클래스 문법이고요. 

3. constructor 안에 선언하는 것과 바깥에 선언하는 것은 동일합니다. 단, constructor가 필요한 경우가 있는데 new 클래스(인수)로 클래스를 호출할 때 인수를 받을 수 있기 때문이죠.

0

블루윤님의 프로필 이미지
블루윤
질문자

아 추가로 constructor 내부에 this.state = {~~} 이렇게 선언한 것을

밖으로 빼서 state = {~~} 로만 작성 할수 있다고 하셨었는데, 요건 JSX 문법인가요? 자바스크립트 고유 클래스 문법인가요? 

블루윤님의 프로필 이미지
블루윤

작성한 질문수

질문하기