class 예약어로 클래스를 선언하고, 생성자 함수 이름을 클래스 이름으로 넣습니다. 매개변수를 포함한 기존 함수의 코드는 constructor() 메서드 안에 넣으면 됩니다. 객체와 마찬가지로 클래스 내부에 선언된 함수도 메서드라고 합니다.
형식
class <클래스 이름> { constructor(매개변수1, 매개변수2, ...) { // 생성자 함수 내용 } }
클래스에 new를 붙여 호출하면 constructor() 메서드가 실행되고 객체가 반환됩니다. 이때 this는 생성된 객체 자신을 가리키게 됩니다.
const monster1 = new Monster('슬라임', 25, 10);
const monster2 = new Monster('슬라임', 26, 9);
const monster3 = new Monster('슬라임', 25, 11);
여기까지만 보면 클래스 문법을 사용해서 얻는 장점을 알 수 없습니다. 클래스 문법의 장점은 객체의 속성과 메서드를 하나로 묶을 수 있다는 데 있습니다.