伽然官网|AnyForWeb官网|CtrlCRM官网 博客分享:WEB技术|WEB前端|WEB视觉

实现JS面向对象的继承

2014-07-03浏览:
标签Javascript

JS面向对象继承实现有以下几种原理,比如:通过call()方法(对象冒充机制)将父类的属性继承,call([thisObj[,arg1[,arg2[, [,.argN]]]]])  调用一个对象的一个方法,以另一个对象替换当前对象。也可以通过prototype属性继承父类方法(防止方法的副本重复创建,造成资源浪费)。

 

如下实例:

 

/**

 * js面向对象继承

 *

 *@link http://www.phpddt.com

 */   

 

//父类

function Person(name,age)

{

   this.name = name;

   this.age = age;

}

Person.prototype.showName = function()

{

   alert(this.name);

}

Person.prototype.showAge = function()

{

   alert(this.age);

}

 

//子类

function Student(name, age, grade)

{

   Person.call(this, name, age);

   this.grade = grade;

}

for(var i in Person.prototype) {

   Student.prototype[i] = Person.prototype[i];//继承基类原型链上的成员

}

//新的成员方法

Student.prototype.showGrade = function()

{

   alert(this.grade);

}

 

 

var p1 = new Person("小明","20");

p1.showName();

 

var p2 = new Student("小红","21", "80");

p2.showName();

p2.showGrade();

 

本文为Anyforweb技术分享博客,需要了解网站建设及更多web应用相关信息,请访问anyforweb.com



标签



订阅

欢迎订阅《AnyForWeb 程序开发》
博客


热门文章



AnyForWeb 内部博客分享

版权所有 © 2000- AnyForWeb

Oh~What’s up?

您当前访问的网站已关闭!

如需了解Web行业资讯,请进入:

如需了解Web行业资讯,请进入:伽然书院