ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 프로토타입
    FE 2023. 5. 12. 17:32

    JavaScript는 프로토타입(Prototype) 기반 언어이다. 프로토타입은 원형 객체를 의미한다.

     

    Human이라는 클래스와 인스턴스, 프로토타입의 관계

     

     

    객체 지향 프로그래밍의 특성 중 상속을 JavaScript에서 구현할 때에는 프로토타입 체인을 사용한다.

    let kimcoding = new Human('김코딩', 30);
    
    // 속성
    kimcoding.age;
    kimcoding.gender;
    // 메서드
    kimcoding.eat();
    kimcoding.sleep();

    DOM과 프로토타입

    브라우저에서 DOM을 이용하면 document.createElement('div')로 새로운 div 엘리먼트를 만들 수 있다. 이렇게 생성된 div 엘리먼트는 HTMLDivElement라는 클래스의 인스턴스이다. 모든 클래스의 조상은 Object가 존재한다.

    인스턴스의 __proto__를 이용하면 이를 더 확실하게 확인할 수 있습니다. __proto__를 이용하면 부모 클래스의 프로토타입, 혹은 '부모의 부모 클래스'의 프로토타입을 알 수 있다.


    종합퀴즈 정리

    3. extends라는 키워드를 이용하면 부모클래스의 자식클래스를 나타낼 수 있다.

    5. super 키워드는 부모클래스의 함수를 호출할 때 사용되고, 생성자 함수 내에서 쓰일 때는 한 번만 호출할 수 있다. 

    this 키워드가 사용되기 전에 사용되어야 한다.

    9. addEventListener() 메서드에 EvenTarget의 프로토타입이 있고 DOM에서는 인스턴스 new 키워드가 아닌 createElement()를 사용한다.

    10. ForeignStudent 클래스는 Human, Sudent 클래스를 상속 받았기 때문에 sleep(), study()를 사용할 수 있다.

     

     

    'FE' 카테고리의 다른 글

    비동기  (0) 2023.05.16
    Underbar  (0) 2023.05.15
    객체 지향  (0) 2023.05.11
    고차함수  (0) 2023.05.10
    Section1 회고  (0) 2023.05.09
Designed by Tistory.