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

最优化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。混合工厂方式


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

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

相关推荐

    android IM

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

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

    SSO(Single Sign-On)单点登录是一种身份验证机制,允许用户在多个应用系统中只需登录一次,即可访问所有相互信任的应用系统,无需再次进行身份验证。本详细设计说明书的下篇将深入探讨SSO的核心原理、实现方式及...

    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,请参考博客...

    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 建造者模式 ...

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

    通过阅读源码,你可以理解数据库引擎的工作原理,包括查询解析、优化、存储引擎等核心组件。 **工具支持** HSQLDB提供了基于Java的管理工具,如`sqltool`,可以用于执行SQL脚本和管理数据库。此外,许多集成开发...

    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

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

    回调允许一个对象在完成特定任务或触发特定事件时通知另一个对象。这个概念在软件工程中广泛使用,尤其在事件驱动编程中。Android系统中的回调机制主要体现在四大组件(Activity、Service、BroadcastReceiver、...

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

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

    MVC5&EF6入门教程_Part3

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

    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

    学员管理系统

    学员管理系统是一种专为教育机构设计的信息管理工具,旨在优化教务流程,提升工作效率,并确保学员信息的安全和有序。系统的核心目标是实现学员信息的高效存储、检索和管理,以支持教育机构的各项教学活动。 SSH...

    Android代码-SmartPopupWindow

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

    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(免费版本)下载地址:...

    “二维码”QRCode -新版火车票(wm+c#+源码)

    二维码相关资料见:http://www.cnblogs.com/wt0731/archive/2007/09/20/899550.html http://www.cnblogs.com/wt0731/archive/2007/08/31/877659.html 下面分享一下在手机上怎么来生成和识别二维码? 下面是一个开源...

Global site tag (gtag.js) - Google Analytics