티스토리 뷰
[JS] 자바스크립트 ES6 Class , extends 예시코드
ES6에 도입된 Class에 대해 예시코드를 통해 알아보자.
@ Class 예시코드
class User {
//constructor : 값을 초기화 해준다.
constructor(name, age) {
this.name = name;
this.age = age;
}
showName() {
console.log(`이름 : ${this.name} 나이 : ${this.age}`);
}
}
const tom = new User("Tom", 19);
tom.showName(); // 이름 : Tom 나이 : 19
console.log(tom);
/* showName이 Prototype에 할당된다.
▼User {name: 'Tom', age: 19}
age: 19
name: "Tom"
▼[[Prototype]]: Object
▶constructor: class User
▶showName: ƒ showName()
▶[[Prototype]]: Object
*/
@ extends 예시코드
class Bmw extends Car {
/*
constructor가 없을 경우에는 내부적으로, 아래와 같이 처리된다.
constructor(...args){
super(...args)
}
자식 클래스 생성자에 값을 추가하기 위해서는 아래와 같이 작성해주어야 한다.
*/
// 생성자 오버라이딩 : super()를 사용해 부모 생성자를 가져와야한다.
// 부모클래스의 매개변수를 사용하기 위해서는 constructor와 super에 매개변수를 넣어주어야 한다.
constructor(color){
super(color);
this.navigation
}
park() {
console.log("PARK");
}
stop() {
console.log("OFF"); // 메소드 오버라이딩 : 부모 메소드를 덮어쓴다.
}
parent() {
super.stop(); // super : 부모의 메소드(stop)를 호출한다.
this.stop(); // this : 현재 메소드(stop)를 호출한다.
}
}
const z4 = new Bmw("blue");
console.log(z4.stop()); // OFF
console.log(z4.parent());
'개발일기 > JS' 카테고리의 다른 글
[JS] axios interceptor 를 이용해서 요청,응답 커스터마이징 하는 방법 (0) | 2022.03.27 |
---|---|
[JS] JAVASCRIPT 배열 초기화하는 방법 (0) | 2022.03.06 |
[JS] Javascript call , apply ,bind 예시 코드 (0) | 2022.02.21 |
[JS] ES6 제너레이터 알아보기. (0) | 2022.02.20 |
[JS] Javascript 모달창 상태에 따른 스크롤 막기, 풀기 (1) | 2022.02.20 |
댓글
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 산업안전기사 실기
- 게더타운
- TS
- 전기산업기사
- 모두CBT
- JavaScript
- 산안기 합격률
- 전기기사
- 전기기사 필기
- TypeScript
- cbt
- 실기CBT
- 개더타운
- 전기공사기사
- nextjs
- 전기기기
- 전력공학
- React
- 전자기학
- fakerjs
- shortid
- zep
- 전기기사실기CBT
- 게더타운맵
- 전기기사필기
- gathertown
- dummydata
- 전기기사실기단답
- KEC반영
- 산업안전기사
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함