/*单一继承*/
function Animal(name,age){
this.name = name;
this.age = age||0;
this.showName = function(){
console.info('name:'+this.name);
}
this.showAge = function(){
console.info('age:'+this.age);
}
}
/*call*/
function Cat(name){
Animal.call(this, name);
}
var cat1 = new Cat("White Cat");
cat1.showName();
var cat2 = new Cat("Black Cat");
cat2.showName();
/*apply*/
function Dog(name,age){
var args=[];
args.push(name);
args.push(age);
Animal.apply(this,args)
}
var dog1=new Dog('dog1',1);
dog1.showName();
dog1.showAge();
var dog2=new Dog('dog2',2);
dog2.showName();
dog2.showAge();
/*多重继承*/
function Move(){
this.run = function(type){
var t = type||'running';
console.info('run:'+t);
}
}
function Druid(){
Animal.call(this);
Move.call(this);
}
var druid1=new Druid();
druid1.name='xd';
druid1.showName();
druid1.showAge();
druid1.run('travel');
function Animal(name,age){
this.name = name;
this.age = age||0;
this.showName = function(){
console.info('name:'+this.name);
}
this.showAge = function(){
console.info('age:'+this.age);
}
}
/*call*/
function Cat(name){
Animal.call(this, name);
}
var cat1 = new Cat("White Cat");
cat1.showName();
var cat2 = new Cat("Black Cat");
cat2.showName();
/*apply*/
function Dog(name,age){
var args=[];
args.push(name);
args.push(age);
Animal.apply(this,args)
}
var dog1=new Dog('dog1',1);
dog1.showName();
dog1.showAge();
var dog2=new Dog('dog2',2);
dog2.showName();
dog2.showAge();
/*多重继承*/
function Move(){
this.run = function(type){
var t = type||'running';
console.info('run:'+t);
}
}
function Druid(){
Animal.call(this);
Move.call(this);
}
var druid1=new Druid();
druid1.name='xd';
druid1.showName();
druid1.showAge();
druid1.run('travel');