• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

생성자 함수와 클래스 중 어느 것을 사용하는게 효율적인가요?

21.11.20 15:40 작성 조회수 112

1

면접에서 클래스와 생성자 함수의 차이를 물어보시는 이유가 궁금합니다.

생성자함수와 클래스의 차이점은 문법 차이 말고는 다를게 없는것인가요??

답변 1

답변을 작성해보세요.

2

안녕하세요 해은님 답변드리겠습니다!

넵 생성자 함수와 클래스의 차이는 문법의 차이가 가장 크다고 할 수 있습니다.

즉, 생성자 함수를 통해 객체를 생성하는 방법(사용자 정의 타입 선언)의 문법 설탕(syntactical sugar)이 바로 class 선언입니다.

하지만 분명 차이점도 존재하는데요, 대표적으로 함수 선언과 달리 class 선언은 호이스팅 되지 않으며,

class 선언 내의 모든 코드는 엄격 모드(strict mode) 에서 작동한다는 것 등 입니다.

좀 더 구체적으로 확인하고 싶으시다면 babel 트렌스파일러(https://babeljs.io/)를 이용해 class 문법이 es5에서 어떻게 바뀌는지 살펴보실 수 있습니다.
아래 그림은 바벨을 이용해 문법을 es6 에서 es5로 변경시킨것입니다. 참고하시기 바랍니다.

좋은 질문 감사합니다!! :)

윤해은님의 프로필

윤해은

질문자

2021.11.26

설명 감사합니다 강사님 ! 👍🏻