본문 바로가기
javaScript

중복 코드 상속 기능 활용해서 개선하기

by mooyou 2024. 1. 8.
728x90
300x250

중복 코드를 상속 기능을 활용해서 개선하는 간단한 javaScript 예시

 

풀이 전

// 중복 코드가 있는 예제
function Animal(name, age) {
    this.name = name;
    this.age = age;
}

Animal.prototype.sayHello = function() {
    console.log('안녕하세요, 나는 ' + this.name + '이고, ' + this.age + '살입니다.');
};

function Dog(name, age, breed) {
    this.name = name;
    this.age = age;
    this.breed = breed;
}

Dog.prototype.sayWoof = function() {
    console.log('멍멍!');
};

 

 

위의 중복 코드를 상속기능을 활용해서 개선한 코드

// 상속을 활용한 개선된 예제
function Animal(name, age) {
    this.name = name;
    this.age = age;
}

Animal.prototype.sayHello = function() {
    console.log('안녕하세요, 나는 ' + this.name + '이고, ' + this.age + '살입니다.');
};

function Dog(name, age, breed) {
    // Animal 생성자 호출하여 중복 코드 제거
    Animal.call(this, name, age);
    this.breed = breed;
}

// Animal의 프로토타입을 상속
Dog.prototype = Object.create(Animal.prototype);

// Dog의 프로토타입에 새로운 메서드 추가
Dog.prototype.sayWoof = function() {
    console.log('멍멍!');
};

 

Dog 객체는 Animal객체를 상속받아 중복 코드를 최소화 할 수 있다. 상속을 활용해 Animal의 기능을 공유하면서 Dog에 필요한 추가적인 기능도 확장할 수 이 있다.

728x90
반응형

댓글