这次给大家带来怎样使用JS继承与多继承,使用JS继承与多继承的注意事项有哪些,下面就是实战案例,一起来看一下。
虽然最新的EC6里边已经有了class的相关功能,但是从普及度上和阅读旧代码需求的方面来看,这点知识也得了解一下。
本文结构:
① 原理及分析
② 简单封装后的运用
1. 继承
① 原理及分析
先上一张图:
用这段代码的思想来实现继承,即:
var inherit=function(objBase){ var F=function(){}; //第一步:定义一个函数F F.prototype=objBase; //第二步:将传进来的基类对象(objBase)赋给函数F的原型(F.prototype) return new F(); //第三步:返回一个F对象(已经具备了objBase特征)}
登录后复制
② 简单封装后的运用
Function.prototype.inherit=function(objBase){ this.prototype=new objBase();}var Person=function(){ this.name="倩倩"; this.sex="女";}var Student=function(){ this.id="0712";}Student.inherit(Person);var student=new Student();alert(student.name +","+ student.sex +","+ student.id);
登录后复制
2. 多继承
① 原理及分析
多继承就是将多个对象的成员,交给当前对象
var o1={name:"倩倩"} //对象的字面值var o2={sex:"女"}var She=function(){}She.prototype={}; //先声明for(var k in o1){ She.prototype[k]=o1[k];}for(var k in o2){ She.prototype[k]=o2[k];}var she=new She();alert(she.name + "," + she.sex);
登录后复制
② 简单封装后的运用
Function.prototype.inherits=function(){ var arr=arguments; //将接收到的arguments对象传给数组arr this.prototype={}; for(var i=0;i<arr.length;i++){ for(var k in arr[i]){ var obj=arr[i]; this.prototype[k]=obj[k]; } }}var o1={name:"倩倩"} //对象的字面值var o2={sex:"女"}var She=function(){}She.inherits(o1,o2);var she=new She();alert(she.name + "," + she.sex);
登录后复制
相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!
推荐阅读:
怎样操作express默认日志组件morgan
Google发布了哪些关于JS的代码规范
以上就是怎样使用JS继承与多继承的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2755835.html