//不同的属性跟方法放在构造函数上
var Cat = function(name,color){
this.name = name;
this.color = color;
}
//相同的属性跟方法都放在原型
Cat.prototype.type = "猫科动物";
Cat.prototype.eat = function(){
alert('吃老鼠');
}
var cat1 = new Cat("大猫","黑色");
var cat2 = new Cat("二猫","金色");
console.log(cat1.type) - -> 猫科动物;
console.log(cat2.type) - -> 猫科动物;
console.log(cat1.type == cat2.type) - -> true
Prototype 继承
//假如有两个构造函数;一个是中国人,另一个是职业;
function Chinese() {
this.nation = "中国";
}
function OCC(occ) {
this.occ = occ;
}
//怎样才能让"医生"去继承"中国,也就是说怎么样能成为中国医生。
OCC.prototype = new Chinese();
var doctor = new OCC('医生');
console.log(doctor.nation + doctor.occ);