클래스

클래스는 객체를 생성하기 위한 템플릿입니다.

자바스크립트는 원래 prototype이라는 것을 기반으로 생성했지만 ES5부터 class 라는 키워드로 클래스를 선언할 수 있습니다.

클래스 >> 객체 >> 인스턴스

클래스에서 객체가 만들어질 때, 이것이 컴퓨터 상의 메모리 위에 저장되면 이것을 인스턴스라고 한다.

constructor

개체 초기화를 위한 메서드. class에는 constructor 한 개만 가능

class Rectangle {
		constructor(height, width) {
				this.height = height;
				this.width = width;
		}
}
const p = new Rectangle(100, 200)
const p2 = new Rectangle(1000, 200)

console.log(p)   // Rectangle { height: 100, width: 200 }
console.log(p2)  // Rectangle { height: 1000, width: 200 }

static

static 키워드는 클래스에 대한 정적 메서드 또는 속성을 정의하며 클래스의 인스턴스에서 호출이 불가하다.

  1. 중복되는 함수, 데이터를 정의할 때 쓰임(메모리 이점)
  2. 명시성”이라는 장점 : 이 클래스의 객체들끼리 사용되는 메서드나 속성이다.