JS继承封装

<script>
var extend = function (subClass, superClass) {
//1.继承类的中间类
var Tmp = function() {};
//2.将父类的原型传递给中间类
Tmp.prototype = superClass.prototype;
//3.设值继承关系
subClass.prototype = new Tmp();
subClass.prototype.constructor = subClass;
//4.在子类中将父类的this转换成当前类的this
subClass.convertASThis = superClass.prototype;
} function Person(name) {
this.name = name;
}
function Author(name, books) {
//使用call方法将父类的this转换为本类的this,并将name属性合并到当前类
Author.convertASThis.constructor.call(this, name);
this.books = books;
this.getInfo = function() {
return this.name + " -> " + this.books;
}
} onload = function() { extend(Author, Person); var a = new Author("aa", "bb"); alert(a.getInfo());
}
</script>

  

上一篇:ECMall的MySQL数据调用的简单方法


下一篇:HDU1160(LIS)