class
키워드를 사용한다.class
안에 생성자 함수가 포함되고, 이 생성자 함수는 리턴값을 만들지 않는다.class
의 이름은 일반 함수와 구분하기 위해 대문자로 시작하고, 일반명사의 형태로 만든다. (일반 함수는 소문자, 동사를 사용)class ClassName {
constructor() { ... } // 생성자 함수
}
**new
키워드**를 사용해서 만든다.ES5 문법으로 작성하면,
// ES5
function Person(name, age, gender) {
this.name = name;
this.age = age;
this.gender = gender;
}
Person.prototype.getName = function() {
return this.name;
};
Person.prototype.getAge = function() {
return this.age;
};
Person.prototype.getGender = function() {
return this.gender;
};
class Person {
constructor(name, age, gender) {
this.name = name;
this.age = age;
this.gender = gender;
}
getName() {
return this.name;
}
getAge() {
return this.age;
}
getGender() {
return this.gender;
}
}
class
키워드를 사용해서 클래스를 만든다.MDN https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Classes
Javascript Class: Difference between ES5 and ES6 Classes
https://medium.com/@apalshah/javascript-class-difference-between-es5-and-es6-classes-a37b6c90c7f8