Js通过原型继承创建子类

//定义一个有两个方法的类
function Person(){}
Person.prototype.married = function(){};
Person.prototype.unmerried = function(){};

//定义一个构造函数作为子类
function Man(defaults){
defaults = defaults || {};
this.name = "Tom";
this.age = defaults.age || 22;
}
//将Man类的原型设为Person类的实例,继承其内容
Man.prototype = new Man();
//将子类的constructor属性指向其自身的构造函数,默认指向的是父类的构造函数
Man.prototype.constructor = Person;

var tom = new Man();

var jerry = new Man({age:20});

alert(tom.age);
alert(jerry.age);

tom.married();
jerry.unmerried();
alert(tom.constructor == Man);
alert(tom.constructor == Person);

 

posted @ 2016-12-25 10:10  行动派  阅读(377)  评论(0编辑  收藏  举报