더북(TheBook)

이번에는 객체에 메서드를 추가해 보겠습니다. 한 몬스터가 다른 몬스터를 공격하는 메서드입니다. 공장 함수라면 다음과 같이 작성합니다. 공격하면 공격받은 몬스터의 체력(monster.hp)이 공격한 몬스터의 공격력(this.att)만큼 줄어듭니다.

function createMonster(name, hp, att) { 
  return { 
    name, hp, att,
    attack(monster) {
      monster.hp -= this.att;
    },
  };
}
const monster1 = createMonster('슬라임', 25, 10);
const monster2 = createMonster('슬라임', 26, 9);
monster1.attack === monster2.attack; // false
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.