javascript纯面向对象开发需要使用到的一个模式,来对对象之间原型继承做中间层代理避免重复继承与代码杂乱

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title>
</head>
<body><script>//父类function Teacher(){}Teacher.prototype.name = "teacher";//子类function Student(){}Student.prototype.age = 18;//原型继承调用
        inherit(Student,Teacher);let s = new Student();let t = new Teacher();/**圣杯模式原型继承封装@param Target 需要继承的子类@param Origin 被继承的父类 */function inherit(Target,Origin){//创建中间层构造函数function Buffer(){}//把被继承父类的原型付给中间层构造函数Buffer.prototype = Origin.prototype;//把实例化的中间层构造函数生成的对象付给需要继承的目标类Target.prototype = new Buffer();//目标类构造函数指向欢原Target.prototype.constructor = Target;//定义目标类从哪继承Target.prototype.super_class = Origin;}console.log(s,t);</script>
</body>
</html>

转载于:https://www.cnblogs.com/y-y-y-y/p/10357697.html

javascript原型继承圣杯模式相关推荐

  1. 深入解析JavaScript 原型继承

    JavaScript 原型继承,学习js面向对象的朋友可以看看.十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下.如有不足之处,欢迎批评指正. Object.prototype Ja ...

  2. 白话解释 Javascript 原型继承(prototype inheritance)

    来源: 个人博客 白话解释 Javascript 原型继承(prototype inheritance) 什么是继承? 学过"面向对象"的同学们是否还记得,老师整天挂在嘴边的面向对 ...

  3. JavaScript原型继承详细解读

    目录 1.构造函数的简单介绍 2.构造函数的缺点 3.prototype属性的作用 4.原型链(prototype chains) 5.constructor属性 5.1:constructor属性的 ...

  4. 再论JavaScript原型继承和对象继承

    JavaScript的原型继承是老生常谈.由于原型即prototype本身也是对象,所以"原型"继承可认为是一种特殊的"对象式"继承."对象式&quo ...

  5. JavaScript 原型继承

    JavaScript 中虽然有对象的概念,但它并不是一门严格意义上的面向对象编程的语言. 尽管 ES6 引入了 class 关键字,但是本质上仍然是对原型链的操作. 通过修改 JavaScript 的 ...

  6. ES5-12 【utils】继承深入、call、apply、圣杯模式、模块化

    继承深入 这两种方式继承不够合理(为什么) 将实例作为子类的原型 在子类的构造函数内部借用父类的构造函数 将父类的原型作为子类的原型(会修改父类的原型) css圣杯布局(左右宽度固定.中间自适应) 目 ...

  7. JavaScript之继承模式,命名空间,对象枚举

    继承发展史 1-传统形式 → 原型链 过多的继承了没用的属性(很好理解,不用代码演示了) 2-借用构造函数 不能继承借用构造函数的原型(很好理解,不用代码演示了) 每次构造函数都要夺走一个函数(很好理 ...

  8. JavaScript 面向对象编程(二) —— 构造函数 / 原型 / 继承 / ES5 新增方法

    本篇为 JavaScript 进阶 ES6 系列笔记第二篇,将陆续更新后续内容.参考:JavaScript 进阶面向对象 ES6 :ECMAScript 6 入门 : Javascript 继承机制的 ...

  9. JavaScript之继承(原型链)

    JavaScript之继承(原型链) 我们知道继承是oo语言中不可缺少的一部分,对于JavaScript也是如此.一般的继承有两种方式:其一,接口继承,只继承方法的签名:其二,实现继承,继承实际的方法 ...

  10. JavaScript 原型链和继承面试题

    JavaScript 原型链和继承问题 JavaScript 中没有类的概念的,主要通过原型链来实现继承.通常情况下,继承意味着复制操作,然而 JavaScript默认并不会复制对象的属性,相反,Ja ...

最新文章

  1. python实现全景图片拼接
  2. 【内网安全】域横向PTHPTKPTT哈希票据传递
  3. (第一次)NODEJS学习笔记
  4. 对makefile中,变量定义中 通配符的理解
  5. java asm 中文文档_Java ASM3学习(3)
  6. 反编译查看源码dex2jar
  7. sql server 之函数小技巧 整数类型为空是用空字符串替代实现
  8. java找不到符号IOException_java:7: 找不到符号
  9. ba控制系统的服务器,01-正文
  10. 获取连接无线路由客户机信息命令
  11. 如何删除gmail快捷链接?
  12. CNN 解析 --唐宇迪
  13. 如何解释GPS中的数据GPGGA、GPRMC等数据
  14. 数据如何真正为业务创造价值!
  15. Emacs 配置 latex
  16. 国际标准战争的技术真相
  17. 成功解决使用import或from...import...导入文件时报错
  18. STM32F407--芯片解读
  19. Mysql安装步骤方法
  20. 智能制造并非只是自动化

热门文章

  1. 拓端tecdat|R语言对二分连续变量进行逻辑回归数据分析
  2. 拓端tecdat|用R语言软件估计光谱密度
  3. java变量练习_Java变量与运算符练习
  4. Java网络编程学习笔记
  5. 调用目标检测百度接口api
  6. 【两种方式】用python和ENVI画出高光谱遥感影像的3D立体图
  7. 零基础起步Keras+LSTM+CRF的实践命名实体识别NER
  8. Visual Studio 2017 警告C4819解决方案
  9. php成绩查询系统的学习心得_CPA成绩查询系统开通时间
  10. latex 表格 每列 分隔符