class
- 객체를 생성하는 템플릿 문법. class 예약어로 클래스 선언.
- constructor 메서드 내부에 코드 작성
- new (클래스이름) 호출 시 constructor 함수가 실행되고 객체가 반환됨.
class Seoul {
constructor(name, age) {
this.name = name;
this.age = age;
}
innerFucn(target) {
target.name = this.name;
}
}
클래스의 상속
- 클래스의 constructor의 매개변수나 클래스 내부의 함수가 겹치는 경우가 있음. 이 경우 중복을 제거하기 위해 클래스 상속을 한다.
- 속성과 메서드를 공통인 부분을 새로운 클래스로 작성하며, 상속은 여러번에 걸쳐서 할 수 있다.
class Unit {
constructor(name, age) {
this.name = name;
this.age = age;
}
overLapFucn(target) {
target.name = this.name;
}
}
class Seoul {
constructor(name, age) {
this.name = name;
this.age = age;
}
overLapFucn(target) {
target.name = this.name;
}
}
class Seoul extends Unit {
constructor(name, age) {
super(name, age);
}
}
class 상속 ( 함수가 유사하지만 똑같지 않을 때)
function overLapFucn(target) {
target.name = this.name;
}
function overLapFucn(target) {
target.name = this.name;
console.log('seoul');
}
function overLapFucn(target) {
super.overLapFucn(target);
console.log('seoul');