TIL 08 | JS Class

Gom·2021년 1월 6일
0

JavaScript

목록 보기
6/22
post-thumbnail

유튜브 드림코딩 by엘리 - 클래스와 오브젝트의 차이점(class vs object), 객체지향 언어 클래스 정리편을 수강하며 정리한 내용입니다. (https://youtu.be/_DLhUBWsRtw)

객체지향언어

  • 구현기능을 객체로 구분가능
  • JavaScript classes (프로토타입 기반 상속)
  • introduced in ES6 (중간에 도입된 개념)
  • syntactical sugar over prototype-based inheritance (문법적인 도입)

Class 정의와 종류

  • class : 연관된 fields(속성), methods(행동)의 묶음
  • data class : methods 없이 fields만 있는 경우
  • 직관적인 이해를 위한 비유 : 청사진, template, 붕어빵 틀
    (object는 붕어빵 재료인 팥, 슈크림)

Class 특성

  • Encapsulation(캡슐화) : 내/외부에서 보여지는 변수를 분류
  • 상속과 다양성

선언 방식

  1. Class declarations

  1. Getter and Setter
    입력값이 잘못된 경우 오류 방지를 위해 사전에 정정하는 역할 수행

  1. Public & Private Fields
    최신 기능으로 지원 브라우저 적음.

  1. static properties and methods
  • 최신 기능으로 지원 브라우저 적음.
  • class 자체에 연결된 값,methods
  • object에 상관없이 공통, 반복적으로 사용되는 값을 static으로 지정하면 메모리 절약, 효율증대

  1. 상속과 다양성
    반복, 공통되는 속성 값을 재사용

  1. Class checking : instanceOf
    좌측의 object가 우측의 class에 의해 만들어진 것인지 체크하여 true/false 값 표시

참고자료:
https://javascript.info/class

profile
안 되는 이유보다 가능한 방법을 찾을래요

0개의 댓글