생성자 함수 프로토 타입
섹션 6-28 생성자함수와 프로토타입에서 슬라이드 39장을 설명할 때, Parent 함수 자체는 객체가 아니라서 __proto__프로퍼티가 없다고 하셨는데, 자바스크립트에서 함수는 객체여서 __proto__프로퍼티가 있지않나요?
답변 2
1
안녕하세요. 이지현님!
결론부터 말씀드리면 강의 내용이 수정되어야 하는 것이 맞습니다.
자바스크립트의 모든 함수는 일급 객체 취급하기 때문에 객체가 맞고 그에 따라 __proto__ 속성을 갖습니다. 이때 Parent.__proto__는 Function.prototype을 참조하게 됩니다.
Function.prototype은 Parent.prototype과는 별개이며
Function.prototype은 Parent 함수가 참조하는 프로토타입이고Parent.prototype은 함수를 통해 생성된 인스턴스가 참조하는 프로토타입입니다.
즉, 함수는 누군가의 자식인 동시에 누군가의 부모가 될 수 있는 이중적인 구조를 가집니다.
놓친 부분을 바로 잡아주셔서 감사드립니다. 강의는 수정하여 재업로드하도록 하겠습니다.
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다.
이지현님이 질문주신 자바스크립트의 함수와 프로토타입에 대한 부분은 자바스크립트의 객체 지향 특성을 이해하는 데 중요한 주제입니다. 자바스크립트에서 함수도 객체이기 때문에, 일반적으로 모든 함수는 __proto__ 프로퍼티를 가지고 있습니다. 이는 함수가 객체라는 것을 나타내며, Function 프로토타입을 가리킵니다.
하지만 강의에서 언급된 “Parent 함수 자체는 객체가 아니라 __proto__ 프로퍼티가 없다”는 설명은 다소 혼란스러울 수 있습니다. 아마도 강사님께서 특정 상황에서의 맥락이나 예외적인 경우를 설명하시면서 발생한 혼란일 수 있습니다. 일반적으로 자바스크립트의 함수는 callable 객체로서 __proto__와 프로토타입 체인에 대한 액세스를 허용합니다.
지금 제기된 질문과 비슷한 주제에 대해 더 상세한 이해를 원하신다면, 다음 게시물을 참고하실 수 있습니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
선생님 공유해주신 핸드북에 링크가 몇개 잘못되었어요
0
12
2
62강 실습자료가 잘못되었습니다.
0
10
1
코드 자료는 없는걸까요?
0
19
2
강의 목표
0
31
1
전공 필기 관련 질문
1
58
2
강의 노트 위주로 학습
0
34
1
쿠키 생성 관련
0
64
3
JWT auth error invalid token
0
59
2
경력기술서는 어떤 방향이 좋을까요?
0
52
2
MSA 와 BFF 아키텍처 설명 부분에 대한 문의
0
49
1
안녕하세요 큰돌님!
0
63
2
eslint.config.js 설정 질문입니다.
0
63
2
7강 흐름 제어 아키택쳐 코드 순서
1
52
1
수업자료 어디서 찾아볼 수 있나요?
0
47
2
함수 강의의 정답.. 어떤가요?
0
40
1
깃권한요청드립니다
0
39
1
<div id="banner">배너 이미지</div> 관련 질문
0
33
1
프로젝트 현실 때문에 차선의 기술 선택을 했던 경험, 이력서에 적어도 괜찮을까요?
1
98
2
강의자료
0
40
1
경력관련 이력서 경험 분량 질문
1
72
2
윈도우에서 Node js를 설치하고 싶어요
0
37
0
addToFile function에서 path를 사용해 새로운 파일을 생성
0
45
1
[46강] EventEmitter를 활용한 10가지 패턴 중 플러그인 아키텍처
0
42
2
지원동기에 대하여
1
65
2





