`

掺元类设计

阅读更多
 var Mixin = function(){};
   Mixin.prototype = {
       serialize : function(){
           var output = [];
            for(key in this){
                      output.push(key + ':' + this[key]);
             }
             return output.join(",");
         }
    }
   
   function augment(rec, giv){
       for(var methodName in giv.prototype){
           if(!rec.prototype[methodName])
                     rec.prototype[methodName] = giv.prototype[methodName];
         }
    }
   
   function augmentPro(rec, giv){
      if(arguments[2]){
          for(var i = 2, len = arguments.length; i < len; i++){
                     rec.prototype[arguments[i]] = giv.prototype[arguments[i]];
          } 
          }else{
                  for(var methodName in giv.prototype){
                            if(!rec.prototype[methodName])
                                  rec.prototype[methodName] = giv.prototype[methodName];
          }
      }
   }
   
   function Author(name, books){
       this.name = name;
       this.books = books;
   }
   
   Author.prototype.getName = function(){
       return this.name;
   }
   
   Author.prototype.getBooks = function(){
       return this.books;
   }
   
   augment(Author, Mixin);
   var a = new Author("li", "book");
   alert(a.getName());
   alert(a.getBooks());
   alert(a.serialize());

这种方式更适合给不同的类来添加一些公共的方法。如果只是给一个类添加的话,就真接用prototype的方式做好了。
augment函数用用for...in来循环遍访giv的prototype中的每个成员,将rec中没有的成员添加进去。
augmentPro是可以选择两个giv中rec想要的成员.
如gugmentPro(Author, Mixin, 'serialize','...')
分享到:
评论

相关推荐

    掺蒸汽加热工艺装置控制系统设计.rar

    本文将深入探讨掺蒸汽加热工艺装置的控制系统设计,主要涉及以下几个核心知识点: 1. **控制系统的概念与分类**:控制系统是指通过自动调节手段,对系统的目标进行控制的系统。在此情境下,可以分为开环控制系统和...

    掺混肥操作规程、工艺设计指标及考核办法.doc

    【掺混肥操作规程、工艺设计指标及考核办法】 掺混肥是一种常见的化肥类型,其生产过程涉及到多个工段和严格的操作规程,旨在确保产品质量和生产效率。本规程主要包括掺混肥工艺管理、操作规程以及相应的考核办法。...

    行业分类-设备装置-光电二极管中带有多种掺杂物植入的图像传感器像素.zip

    在实际应用中,如高分辨率相机、手机摄像头、医疗成像设备以及天文观测等领域,带有多种掺杂物植入的光电二极管在图像传感器像素中的优化设计对于提升图像质量和降低功耗至关重要。通过持续的技术创新和优化,我们...

    行业-电子政务-具有掺杂物的有机电子器件、掺杂物的应用和用于制造掺杂物的方法.zip

    4. 影响光学性质:掺杂还可以改变有机材料的光学性质,如吸收光谱,这对于有机发光二极管(OLED)的设计尤为关键。 制造掺杂物的方法多样,主要包括: 1. 溶剂掺杂:通过在溶剂中溶解有机半导体材料和掺杂剂,然后...

    行业文档-设计装置-大比例掺用铁尾矿的轻质保温墙体材料及制备方法.zip

    这类材料通常包括泡沫混凝土、陶粒混凝土等,而本技术可能涉及将铁尾矿与其他轻质骨料(如珍珠岩、膨胀蛭石)结合,通过特定的工艺形成具有保温效果的墙体材料。 制备方法方面,可能会涉及到以下步骤: 1. 铁尾矿...

    宽频掺铒光纤放大器之研究(繁).pdf

    例如,通过软件和硬件的结合,使用LabVIEW这类编程环境,可以设计出动态调整增益平坦度的控制系统,从而进一步提升掺铒光纤放大器在光纤通信系统中的应用效果。 综上所述,掺铒光纤放大器的设计和应用涉及了光通信...

    电子政务-掺锡氧化铟的短路测试电路.zip

    在电子政务领域,技术的应用是不可或缺的一部分,而掺锡氧化铟(Indium Tin Oxide, ITO)作为一种特殊的材料,在电路设计中具有重要的地位。掺锡氧化铟是一种透明导电氧化物,广泛应用于触摸屏、显示器和其他光学...

    行业文档-设计装置-掺加二水磷石膏晶须的生态功能型墙纸原纸及其制备方法.zip

    标题中的“行业文档-设计装置-掺加二水磷石膏晶须的生态功能型墙纸原纸及其制备方法”揭示了这篇文档的核心内容,它涉及的是建筑材料领域的一个创新技术,特别是墙纸原纸的制造工艺。二水磷石膏晶须是一种在环保和...

    高功率单频掺铒光纤激光技术研究进展.docx

    单频掺铒光纤激光器的实现主要分为两类:行波腔和驻波腔结构。行波腔通常需要长腔体和窄带滤波器来保证单纵模运转,但结构复杂,易出现模式跳变。相比之下,驻波腔结构简单,模式稳定性好,但腔长限制了增益光纤长度...

    行业分类-设备装置-为快速擦写存储器装置的多晶硅提供掺杂质浓度的方法.zip

    在电子技术领域,存储器设备的设计与制造是至关重要的部分,特别是那些能够快速擦写、高效运作的存储器。本文将深入探讨标题“行业分类-设备装置-为快速擦写存储器装置的多晶硅提供掺杂质浓度的方法”所涵盖的知识点...

    行业文档-设计装置-乳中掺铬酸钾、重铬酸钾快速检测试纸.zip

    总结来说,"乳中掺铬酸钾、重铬酸钾快速检测试纸.zip"提供的信息是关于乳制品中这两类有毒化合物的快速检测方法,涉及到食品安全检测技术、化学分析原理以及实际操作注意事项。这些知识点对于乳制品行业从业者、质量...

    电子-一种瓦斯发电机组掺混LNG燃料设备

    标签“资料 文档”暗示这是一份详细的技术资料或报告,可能包含了对LNG掺混技术的原理介绍、系统设计、操作流程、环境影响分析以及经济效益评估等内容。 根据压缩包内的文件名“行业分类-电子政务-一种瓦斯发电机组...

    DME+GRI2.11_DME_二甲醚掺混甲烷的详细化学反应机制_

    在实际应用中,这种混合燃料的化学反应机制可用于优化内燃机设计,改进燃烧效率,减少有害排放,例如一氧化碳(CO)、未燃烧烃类(UHC)和氮氧化物(NOx)。通过数值模拟,工程师可以预测和调整燃料配方,以实现更清洁、更...

    大掺量粉煤灰混凝土的试验探索(全文).docx

    为解决这些问题,研究人员设计了一系列试验方案,对混凝土配合比进行了优化,以提高粉煤灰掺量。他们采用了不同比例的粉煤灰(35%,45%, 55%)替代水泥,并结合不同水胶比,进行试拌试验。试验材料包括云南远东水泥 ...

    Excel对正交试验设计混凝土配合比的数据处理.pdf

    因此,在设计混凝土配合比时,如何在多因素的影响下选择最优的掺量成为了一个必须考虑的问题。 为了解决这一问题,正交试验设计被引入混凝土配合比设计中。正交试验设计是一种以概率论、数理统计和实践经验为基础的...

    大数据-算法-掺氢高辛烷值燃料预混层流火焰特性的数值模拟.pdf

    在当前的科技领域,大数据和算法的应用已经渗透到各个行业,包括能源研究。"大数据-算法-掺氢高辛烷值...未来的研究可能将深入探讨这些发现如何应用于实际的发动机设计和控制策略,以实现更高效、更环保的燃烧过程。

    光纤通信系统光放大器设计学士学位论文.doc

    本文档主要介绍了光纤通信系统中的光放大器设计,特别是掺铒光纤放大器的理论和应用。光纤通信系统是利用光纤来传输携带信息的光波以达到通信的目的的技术。光纤通信系统具有通信容量大、传输速率高、使用寿命长等...

    双掺和料混凝土配合比设计简易计算法.pdf

    在本案例中,设计目标是针对温州绕北二期高速项目,采用的材料包括乐清海螺P.O425水泥、福建II类II区中砂、浙江II类5-31.5mm碎石、聚羧酸减水剂、北仑电厂F类II级粉煤灰和S95级磨细矿渣粉。 配合比设计的初步步骤是...

Global site tag (gtag.js) - Google Analytics