다시 시작하는 자바스크립트 - 클래스 퀴즈2(심층)자바스크립트2023. 3. 15. 00:54
Table of Contents
728x90
반응형
헷갈리는 것들만 따로 정리할 예정.
deep dive 책을 함께 공부함.
- 퀴즈 2
1. 정직원과 파트타임직원을 나타낼 수 있는 클래스를 만들어 보자
2. 직원들의 정보 : 이름, 부서이름, 한 달 근무 시간
3. 매달 직원들의 정보를 이용해서 한 달 월급을 계산할 수 있다
4. 정직원은 시간당 10000원
5. 파트타임 직원은 시간당 8000원
[ 기존에 작성한 코드 ]
class Employee {
constructor(name, department, workTime, pay) {
this.name = name;
this.department = department;
this.workTime = workTime;
this.pay = pay;
}
culculator = () => {
return this.pay * this.workTime;
};
}
class Unofficial extends Employee { }
const unofficial = new Unofficial("김나나", "마케팅부", 249, 8000);
console.log(unofficial);
const salary = unofficial.culculator();
console.log(salary);
class Official extends Employee { }
const official = new Official("유미미", "인사팀", 249, 10000);
console.log(official);
const salary2 = official.culculator();
console.log(salary2);
잘 했으나, 외부에서 숫자를 입력받지 않는 것이 좋다고 하여 코드를 수정함.
자식 클래스들에 시급을 고정시켜두기로 하였음.
class Employee {
constructor(name, department, workTime, pay) {
this.name = name;
this.department = department;
this.workTime = workTime;
this.pay = pay;
}
culculator = () => {
return this.pay * this.workTime;
};
}
class Unofficial extends Employee {
static #PAY = 8000; // 인스턴스 레벨에서 접근 불가능 + 접근 제어자 : static으로 작성해야 주급을 고정시킬 수 있음.
constructor(name, department, workTime) { // 부모 클래스에서 쓸 것들을 가져옴.
super(name, department, workTime, Unofficial.PAY);
// 클래스가 상속하고 있는 부모 클래스의 것들. 기존의 pay 자리에 가격을 고정시켜둔 Offical.Pay를 넣어줌.
}
}
const unofficial = new Unofficial("김나나", "마케팅부", 249);
console.log(unofficial);
const salary = unofficial.culculator();
console.log(salary);
class Official extends Employee {
static #PAY = 10000;
// 인스턴스 레벨에서 접근 불가능 + 접근 제어자 : static으로 작성해야 주급을 고정시킬 수 있음.
constructor(name, department, workTime) { // 부모 클래스에서 쓸 것들을 가져옴.
super(name, department, workTime, Official.PAY);
// 클래스가 상속하고 있는 부모 클래스의 것들. 기존의 pay 자리에 가격을 고정시켜둔 Offical.Pay를 넣어줌.
}
}
const official = new Official("유미미", "인사팀", 249);
console.log(official);
const salary2 = official.culculator();
console.log(salary2);
728x90
반응형
'(심층)자바스크립트' 카테고리의 다른 글
(심층)자바스크립트다시 시작하는 자바스크립트 - 형 변환, 선언 (0) | 2023.03.16 |
---|---|
다시 시작하는 자바스크립트 - 내장객체 (0) | 2023.03.15 |
다시 시작하는 자바스크립트 - 클래스 퀴즈1 (0) | 2023.03.14 |
다시 시작하는 자바스크립트 - 클래스 (2) | 2023.03.14 |
다시 시작하는 자바스크립트 - 객체 (3) | 2023.03.13 |
@min' :: 개발을 하자
github : https://github.com/dnjfht
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!