• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 JavaScript, TS 게시판 prototype관련 질문

prototype관련 질문

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #72271

    황재욱
    참가자
    Class 생성 후 메소드를 추가해줄 때:
    
    
    이렇게 하니 정상적으로 prototype 내에 sayBye() 함수가 존재합니다.
    
    차이가 뭔지 궁금해서 아래와 같이 그냥 메소드를 추가해봤습니다:
    
    콘솔창에 이렇게 뜹니다:
    
    자식 오브젝트에 sayBye()가 없는 걸로 보입니다.
    하지만 [[Prototype]]을 열어보니:
    
    constructor 내에 sayBye 함수가 존재합니다. 하지만 자식.sayBye();를 하면 에러가 뜹니다.
    코드 순서가 문제인가 싶어서 아래처럼 메소드 추가 후 자식 생성을도 해봤습니다:
    
    하지만 여전히 자식 내엔 sayBye가 없고 자식.sayBye()는 에러를 출력합니다. 부모의 constructor를 살펴봤을땐 sayBye()가 존재하고요.
    
    질문) 부모.sayBye = function(){} 하면 정확히 무슨 일이 일어나는 건가요? 왜 위와 같은 현상이 일어나는 건가요?
    
    
    #72288

    codingapple
    키 마스터
    그냥 부모 object에 직접 함수하나 추가하는 문법입니다 
    거기다넣으면 자식은 사용불가능합니다
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관, 개인정보처리방침
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠