手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >JS继承用法实例分析
JS继承用法实例分析
摘要:本文实例分析了JS继承的用法。分享给大家供大家参考。具体分析如下:继承:子类不影响父类,子类可以继承父类的一些功能(代码复用)属性的继承:调...

本文实例分析了JS继承的用法。分享给大家供大家参考。具体分析如下:

继承 : 子类不影响父类,子类可以继承父类的一些功能 ( 代码复用 )

属性的继承 : 调用父类的构造函数 call

方法的继承 : for in : 拷贝继承 (jquery也是采用拷贝继承extend)

1. 拷贝继承

function Person (name){ this.name = name; } Person.prototype.showName =function (){ alert(this.name); } function Worker(name,job){ Person.call(this,name); this.job = job; } extend(Worker.prototype, Person.prototype); //如果用Worker.prototype=Person.prototype的话,会造成引用相同的问题 function extend(obj1,obj2){ for(var i in obj2){ obj1[i] = obj2[i] } } var coder = new Worker('magicfly','frontEnd'); coder.showName();

2. 类继承

function Person (name){ this.name = name; } Person.prototype.showName =function (){ alert(this.name); } function Worker(name,job){ Person.call(this,name); this.job = job; } //Worker.prototype = new Person(); // 这样继承会继承父级的不必要属性 function F(){}; F.prototype = Person.prototype; Worker.prototype = new F(); //通过建立一个临时构造函数来解决 ,也称为代理函数 var coder = new Worker('MAGICFLY','START'); coder.showName();

3. 原型继承

var a = { name : '小明' }; var b = cloneObj(a); b.name = '小强'; //alert( b.name ); alert( a.name ); function cloneObj(obj){ var F = function(){}; F.prototype = obj; return new F(); }

适用情况

拷贝继承: 通用型的 有new或无new的时候都可以

类式继承: new构造函数

原型继承: 无new的对象

希望本文所述对大家的javascript程序设计有所帮助。

【JS继承用法实例分析】相关文章:

JSON简介以及用法汇总

JS+CSS实现的拖动分页效果实例

javaScript中with函数用法实例分析

Javascript中With语句用法实例

JQuery中DOM加载与事件执行实例分析

JQuery中层次选择器用法实例详解

Jquery中基本选择器用法实例详解

javaScript中push函数用法实例分析

JQuery中节点遍历方法实例

javascript委托(Delegate)blur和focus用法实例分析

精品推荐
分类导航