[Inside Javascript] 4. 프로토타입 개념

2022. 4. 6. 18:37·독서/Inside Javascript
반응형

-프로토타입

모든 객체는 각자 부모 역할을 하는 객체를 갖고 있는데, 이 객체를 프로토타입이라고 한다.
객체지향 프로그래밍의 '상속'과 유사하다.

 

간단하게 객체를 만들어서 출력해보았다.

책이 옛날 책이라 그런지, 책 내용과는 달리 크롬에서도 __proto__ 가 아니라 [[Prototype]] 프로퍼티가 보인다.

ECMAScript 명세서에 의하면, 모든 자바스크립트 객체는 자신의 프로토타입 객체를 가리키는 [[Prototype]] 프로퍼티를 가진다.

 

이 프로토타입 객체의 종류는 여러가지가 있는데,

어떤 종류의 객체를 프로토타입으로 가질지는 사바스크립트 룰에 따라 객체를 생성할 때 결정된다.

예시와 같이 객체 리터럴로 생성한 객체는 Object.prototype 객체를 프로토타입 객체로 가진다.

 

근데 한번 궁금해서 [[Prototype]] 프로퍼티를 펼쳐보았더니 다음과 같이 되어있었다.

여기에는 진짜로 책에 설명한것처럼 __proto__ 프로퍼티가 있었다..

무슨 차이인지는 아직 모르겠다. 책 이미지에서는 저 [[Prototype]] 자리에 __proto__ 특성이 있긴 했었는데..

책에서 '크롬의 경우' 라고 했다보니 다른 브라우저는 어떤지 보고 싶었는데, 당장은 크롬 개발자 도구를 보는게 최선이라 아쉽다.

 

 또한 객체를 생성할 때 지정된 프로토타입 객체는 사용자가 임의로 바꿀 수 있다.

자바스크립트에서는 이를 이용해 객체지향의 상속 개념을 구현할 수 있다.

음... 안되는데요...?

undefined라 안된건가 싶어서 임의 객체를 생성해서 연결해보았다.

음... 뒤에 6장에서 프로토타입을 이용한 상속을 다룬다고 하니 그때 다시 책을 읽고 해봐야겠다 ㅋㅋㅋㅋ

아무래도 이렇게 하는건 아닌가보다.

 

개념을 설명하는 파트다보니, 이 정도에서 프로토타입 내용이 끝났다.

다음으로는 배열에 대해 다룰 차례이다.

반응형
저작자표시 비영리 변경금지 (새창열림)

'독서 > Inside Javascript' 카테고리의 다른 글

[Inside Javascript] 6. 기본타입과 표준메서드, 연산자  (0) 2022.06.12
[Inside Javascript] 5. 배열  (2) 2022.05.09
[Inside Javascript] 3. 자바스크립트의 객체  (0) 2022.03.26
[Inside Javascript] 2. 자바스크립트의 데이터타입  (0) 2022.03.25
[Inside Javascript] 1. 자바스크립트의 핵심 개념  (0) 2022.03.21
'독서/Inside Javascript' 카테고리의 다른 글
  • [Inside Javascript] 6. 기본타입과 표준메서드, 연산자
  • [Inside Javascript] 5. 배열
  • [Inside Javascript] 3. 자바스크립트의 객체
  • [Inside Javascript] 2. 자바스크립트의 데이터타입
에버듀
에버듀
개발은 좋은데 뭘로 개발할까
  • 에버듀
    Blog. 에버듀
    에버듀
  • 전체
    오늘
    어제
    • 분류 전체보기 (614)
      • 개인 프로젝트 (43)
        • 토이 프로젝트 (3)
        • [2020] 카카오톡 봇 (9)
        • [2021] 코드악보 공유APP (22)
        • [2022] 유튜브 뮤직 클론코딩 (9)
        • [2025] 한글 SQL 데이터베이스 (0)
      • 팀 프로젝트 (22)
        • [2020] 인공지능 숫자야구 (4)
        • [2022] OSAM 온라인 해커톤 (10)
        • [2024] GDSC 프로젝트 트랙 (6)
        • [2025] 큰소리 웹 페이지 (2)
      • CS (335)
        • 자료구조 (19)
        • 어셈블리 (41)
        • 멀티미디어응용수학 (7)
        • 컴퓨터 구조 (29)
        • 알고리즘 분석 (4)
        • 컴퓨터 네트워크 (38)
        • 프로그래밍언어론 (15)
        • HCI 윈도우즈프로그래밍 (26)
        • 기초데이터베이스 (29)
        • 운영체제 (23)
        • 오토마타 (24)
        • 문제해결기법 (11)
        • 블록체인 (22)
        • 소프트웨어공학 (21)
        • 기계학습심화 (12)
        • 컴퓨터그래픽스와 메타버스 (8)
        • 분산시스템특론 (6)
      • 자기계발 (44)
        • 생각 정리 (22)
        • 대외활동 (11)
        • 동아리 (7)
        • 자격증 (3)
        • 머니 스터디 (1)
      • 알고리즘 (PS) (107)
        • BOJ (101)
        • Programmers (5)
        • 알고리즘 이모저모 (1)
      • WEB(BE) (8)
        • express.js (1)
        • Spring & Spring Boot (7)
      • WEB(FE) (2)
        • html, css, js (1)
        • React.js (1)
      • Tool & Language (6)
        • Edit Plus (1)
        • Git (1)
        • Python3 (2)
        • Java (2)
      • Infra (12)
        • AWS (1)
        • Oracle Cloud (8)
        • Firebase (2)
        • Network (1)
      • Android (18)
        • Java (6)
        • Flutter (12)
      • Window (2)
        • Visual Studio 없이 WPF (1)
        • MFC (1)
      • 독서 (14)
        • Inside Javascript (7)
        • Database Internals (6)
        • 한 글 후기 (1)
  • 링크

    • github
    • website
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
에버듀
[Inside Javascript] 4. 프로토타입 개념
상단으로

티스토리툴바