总结出JavaScript有以下几种继承继的方法:

1.对象冒充方法,可以多承继;

A=function()
  {
    this.code="001";
    this.name="whiteangell";
    this.getCode=function()
    {
      return this.code;
    }
    this.getName=function()
    {
     return this.name
    }
  };

B = function()
  {
      this.newMethod=A;
      this.newMethod();
      this.age=20;
      this.getAge=function()
      {
        return this.age;
      }

};
  var bb = new B();
  alert(bb.getName());

2.原型链法;

如:

A=function()
  {
    this.code="001";
    this.name="whiteangell";
    this.getCode=function()
    {
      return this.code;
    }
    this.getName=function()
    {
     return this.name
    }
  };
  B = function()
  {     
      this.age=20;
      this.getAge=function()
      {
        return this.age;
      }
  };
  B.prototype=new A();
  var bb = new B();
  alert(bb.getName());

3.拷贝复制法

Object.extend = function(destination,source)
    {
        for ( pro in source )
        {
            destination [pro] = source [pro];
        }
        return destination ;
    }; 
  A = function(){};
  A.prototype =
  {
    code:"001",
    name:"whiteangell",
    getCode:function()
    {
      return this.code;
    },
    getName:function()
    {
     return this.name
    }
  };
  B= function(){};
  B.prototype= Object.extend({
  age:20,
      getAge:function()
      {
        return this.age;
      }
  },A.prototype); 
  var bb = new B();
  alert(bb.getName());

4.call()方法,可以多承继;

A=function()
  {
    this.code="001";
    this.name="whiteangell";
    this.getCode=function()
    {
      return this.code;
    }
    this.getName=function()
    {
     return this.name
    }
  };
  B = function()
  {     
      A.call(this);
      this.age=20;
      this.getAge=function()
      {
        return this.age;
      }

};
  var bb = new B();
  alert(bb.getName());

5.apply()方法,可以多承继;

A=function()
  {
    this.code="001";
    this.name="whiteangell";
    this.getCode=function()
    {
      return this.code;
    }
    this.getName=function()
    {
     return this.name
    }
  };
  B = function()
  {      
      A.apply(this);
      this.age=20;
      this.getAge=function()
      {
        return this.age;
      }
  };
  var bb = new B();
  alert(bb.getName());

转载于:https://blog.51cto.com/stepheniweb/785804

转载一个关于JavaScript几种继承方法的总结相关推荐

  1. 通过ID查询一个用户的两种开发方法

    通过ID查询一个用户的两种开发方法 数据库建表sql语句如下:https://github.com/beyondyanyu/Sayingyy/blob/master/JDBC2-数据库sql建表语句 ...

  2. Javascript的对象继承方法

    许多OO 语言都支持两种继承方式: 接口继承:只继承方法签名 实现继承:继承实际的方法. 由于函数没有签名,在ECMAScript 中无法实现接口继承.ECMAScript 只支持实现继承 原型链继承 ...

  3. [乐意黎转载]一个治愈 JavaScript 疲劳的学习计划

    像其他人一样,我最近偶然看到 Jose Aguinaga 的文章<在 2016 年学 JavaScript 是一种什么样的体验>". 译者注:中文翻译在此. 很显然,这篇文章触到 ...

  4. js 中的五种继承方法

    正式发布的ES6中已经封装实现了其他OO语言中的继承形式,Class Extends,这里主要记录js的原型继承和借用构造函数继承 一.原型链继承 function Super(){this.name ...

  5. [转载] JAVA面向对象之代码块 继承 方法的重写 super关键字与重写toString()方法介绍

    参考链接: 可以重写Java中的私有方法吗 JAVA面向对象之代码块与继承 代码块分类 局部代码块 作用:限制变量生命周期 书写位置:在方法中 构造代码块 开发中很少使用 书写位置:类中  方法外 调 ...

  6. 构造函数的五种继承方法

    1.使用call或apply绑定构造函数 animal.apply(this.arguments) 2.使用prototype属性 Cat.prototype=new Animal(); Cat.pr ...

  7. Python的两种继承方法

    # class Animal: #经典类 class Animal(object): #新式类def __init__(self,name):self.name = namedef eat(self, ...

  8. Javascript七种继承方式

    <!DOCTYPE html> <html><head><meta charset="utf-8"><title>< ...

  9. 一个轻量级javascript框架的设计模式

    公司一直使用jQuery框架,一些小的项目还是觉得jQuery框架太过于强大了,于是自己周末有空琢磨着写个自己的框架.谈到js的设计模式,不得不说说js的类继承机制,javascript不同于PHP可 ...

最新文章

  1. 芝大教授: 博士培养正沦为“庞氏骗局”
  2. Kafka解析之topic创建(2)
  3. 基于.NetCore3.1系列 —— 日志记录之日志配置揭秘
  4. python判断数据在某个区间
  5. python中数字类型与处理工具
  6. Ubuntu16.04安装chrome浏览器
  7. 2018 开始认真学习点python
  8. ubunut14.04修改时区,查看版本信息
  9. 计算机硬盘分区知识简介、Linux企业级分区方案建议
  10. 调用地图JS/API只显示一个省
  11. Chapter Three : Python 序列之字符串操作详解
  12. 2020年显卡天梯图
  13. [Learn Android Studio 汉化教程]Reminders实验(一)
  14. python自动排课表_LeetCode 207. 课程表 | Python
  15. 渗透测试原理与基本进程
  16. 邮件发送平台哪个最好?一站式邮件发送平台推荐!
  17. 2019-2022年中国定期存款基准利率走势(附三个月定期、半年定期、一年定期、二年定期及三年定期存款基准利率)[图]
  18. JQuery对象与JavaScript对象的区别与转换
  19. 天堂向左,深圳往右 第十三章第十四章
  20. 那年杏花微雨,你说你是DOM

热门文章

  1. 【Groovy基础系列】 Groovy运算符
  2. DOS call 中的%cd%,当前文件夹演示
  3. 你应该在开始API开发之前知道的事(下)(翻译)
  4. 《微软-统一沟通-UC 2013》-1-部署-基础架构-2-Add a domain controller
  5. 一些有用的Python库
  6. [NIO-1]缓冲区
  7. JetBrains 2018 中国开发者生态报告:Java 最流行
  8. OnsenUI 前端框架(三)
  9. 返回一个一维整数数组中最大子数组的和02
  10. QML的默认属性default property