// 前に作ったやつ
var Monster = function(name, hp, attack){
this.name = name;
this.hp = hp;
this.attack = attack;
this.doAttack = function(){
console.log(this.name + 'は' + this.attack + 'のダメージを与えた');
}
}
var babaa = new Monster('ババァ', 9999, 8000);
var jijii = new Monster('ジジィ', 100, 1);
console.log(babaa.doAttack());
console.log(jijii.doAttack());
// これでは、メソッドもコピーされて別別になっている!
// 後からメソッドの中身を変更しようとするとそれぞれのインスタンスのメソッドを修正する必要がある
// prototypeを使った場合
var Monster = function(name, hp, attack){
this.name = name;
this.hp = hp;
this.attack = attack;
}
Monster.prototype.doAttack = function(){
console.log(this.name + 'は' + this.attack + 'のダメージを与えた');
}
var babaa = new Monster('ババァ', 9999, 8000);
var jijii = new Monster('ジジィ', 100, 1);
babaa.doAttack();
jijii.doAttack();
// インスタンスごとにメソッドを増やさないので、メモリの節約になる!!