`
guoyiqi
  • 浏览: 965100 次
社区版块
存档分类
最新评论

最优化javascript自定义对象(转自:http://www.cnblogs.com/QiuYun/archive/2007/03/22/684523.html)

 
阅读更多
1.工厂方式


这种方式是先建一个对象,再给它加属性和方法。
缺点:每次 var oCar1 = create("red",4,23);的时候都要从新创建新的showColor 函数,这样就以为这每个对象都有自己的函数。
解决的方法:


ps:这样写看起来好丑,不象一个对象了。

2.构造函数方法


ps:默认是返回this,所以没必要写return this;
缺点:创建对象的时候也要不停的创建新的函数showColor

3.原型方式



缺点:构造函数没参数;当属心为对象时候,所有被实力化的Car的对象属性都一样!

4.混合的构造函数/原型方式
用构造函数定义对象的所有非函数属性,用原型方式定义对象的函数属性(方法)


这样问题就都解决了,不过OOPer决定它不完美

5.动态原型方法


这样所有问题都解决并且向个正真的对象了

6。混合工厂方式


这种方式通常是在不能应用前一种方式时的变通方式。创建假构造函数,返回另一种对象的新实例。

总结:目前用的最多的是混合的构造函数/原型方式,此外动态原型也很流行,不咬单独使用经典的构造函数或原型方式,这样的代码会有问题。
分享到:
评论

相关推荐

    sso详细设计说明书(下篇)转载(海纳百川文章http://www.cnblogs.com/David-weihw/a)

    流程图 博文链接:https://cailin.iteye.com/blog/143116

    android IM

    即时通讯相关的资料: ... 成功解决asmack不能收发文件的问题 ...http://www.cnblogs.com/charley_yang/archive/2011/03/27/1997938.html http://javatech.blog.163.com/blog/static/1766322992010111725339587/ ...

    HSQLDB安装与使用-转自http://www.cnblogs.com/wllyy189/archive/2008/11/15/1334002.html

    NULL 博文链接:https://dins.iteye.com/blog/454304

    android的回调机制(转自http://www.cnblogs.com/vtianyun/archive/2012/06/19/2555427.html)

    NULL 博文链接:https://zhanglimijavaeye.iteye.com/blog/1729615

    Web 断点续传批量上传上传工具

    开发文档-ASP.NET:http://www.cnblogs.com/xproer/archive/2012/02/17/2355469.html 升级日志:http://www.cnblogs.com/xproer/archive/2012/02/17/2355449.html 示例下载:...

    JS截屏控件

    开发文档-ASP.NET(C#):http://www.cnblogs.com/xproer/archive/2010/12/04/1896552.html 开发文档-PHP:http://www.cnblogs.com/xproer/archive/2011/05/16/2047915.html 开发文档-JSP:...

    webApi请求插件PostMan

    webApi请求插件PostMan,请参考博客:http://www.cnblogs.com/chenwolong/p/PostMan.html。webApi请求插件PostMan,请参考博客:http://www.cnblogs.com/chenwolong/p/PostMan.html。webApi请求插件PostMan,请参考博客...

    HttpDownloader-开发文

    产品介绍:http://www.cnblogs.com/xproer/archive/2011/03/26/1996322.html 开发文档:http://www.cnblogs.com/xproer/archive/2011/03/26/1996371.html 升级日志:...

    23种设计模式的java实现

    抽象工厂模式 http://www.cnblogs.com/java-my-life/archive/2012/03/28/2418836.html 工厂方法 http://www.cnblogs.com/java-my-life/archive/2012/03/25/2416227.html 建造者模式 ...

    C# 并发测试

    存储过程版、EF框架版,详情请结合博客:http://www.cnblogs.com/chenwolong/p/BF.html 网址。 C#并发处理。存储过程版、EF框架版,详情请结合博客:http://www.cnblogs.com/chenwolong/p/BF.html 网址。 C#并发...

    C# 简单的作业调度

    ,C# 简单的作业调度,亦可参考博客:http://www.cnblogs.com/chenwolong/p/Job.html,C# 简单的作业调度,亦可参考博客:http://www.cnblogs.com/chenwolong/p/Job.html,C# 简单的作业调度,亦可参考博客:...

    一个牛人提供的GIS源码(很好)

    可以看我以前的截图,做了个界面,请大家PP http://www.cnblogs.com/Tangf/archive/2006/03/16/351640.html 特色四:简单的加密方式也可以学习下。这个加密方式可以对移植性进行控制。 特色五:移植性强,许多东西...

    谷歌开源的Google Preview Image Extractor.zip

    这个项目可以考虑用在特定情况下加速加载无损格式的预览图,提升用户体验 该项目没有demo代码,demo代码可参考博客园的一位网友的文章:http://www.cnblogs.com/tntmonks/p/5143350.html 标签:无损图片

    django项目实例(django 简易博客开发)

    http://www.cnblogs.com/cacique/archive/2012/10/03/2710803.html django 简易博客开发 5 markdown支持、代码高亮、gravatar头像服务 http://www.cnblogs.com/cacique/archive/2012/10/07/2713703.html

    MVC5&EF6入门教程_Part3

    转自:http://www.cnblogs.com/miro/p/4030622.html 整理到了doc文档里,内含代码。 方便一起学习。

    开源GIS最著名的地图投影库Proj.4库

    Proj.4的功能主要有经纬度坐标与地理坐标的转换,坐标系的转换,包括基准变换等。 下载也可直接使用git进行下载:git clone ...cmake下载与安装:https://www.cnblogs.com/chenyaling/p/10894084.html

    libmcrypt-2.5.8.tar.gz/mcrypt-2.6.8.tar.gz/mhash-0.9.9.9.tar.gz

    libmcrypt-2.5.8.tar.gz、mcrypt-2.6.8.tar.gz、mhash-0.9.9.9.tar.gz php安装mcrpyt插件所需的包 安装方法:http://www.cnblogs.com/huangzhen/archive/2012/09/12/2681861.html

    博客按键消抖试验及验证随笔及之前的源码

    博客园地址http://www.cnblogs.com/noticeable/p/7220368.html 详细讲解了开发流程

    CKFinder.v2.4.1.完美注册版.ha666.zip

    CKEditor+CKFinder使用与配置:http://www.cnblogs.com/dmeiyang002/p/3808307.html 官网地址:http://ckeditor.com CKEditor下载地址:http://ckeditor.com/download CKFinder(免费版本)下载地址:...

    Android代码-SmartPopupWindow

    SmartPopupWindow ...Android7.0 PopupWindow的兼容问题,修复了问题1和3中描述的问题,但是由引入了新的问题吗,具体详情 博文地址:http://www.cnblogs.com/popfisher/p/6434757.html Github地址:...

Global site tag (gtag.js) - Google Analytics