摘要: 迭代器模式定义:提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。 迭代器模式的应用举例,根据不同的浏览器获取相应的上传组件对象 var getActiveUpload = function(){ try{ return new ActiveXObject("TXFTNA 阅读全文
posted @ 2016-02-18 17:16 倾其一生 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 代理模式是非常常用的一种模式,顾名思义,为两个对象之间添加一层代理,通过代理访问想要访问的对象,而不是直接去访问或修改。 虚拟代理 //图片预加载代理 var myImg= (function(){ var imgnode = document.createElement('img') docume 阅读全文
posted @ 2016-02-18 12:08 倾其一生 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 策略模式的定义:定义一系列,并把它们一个个封装起来,并使它们可以互相替换。 从定义可以看出,策略模式至少需要两部分。一部分是策略类,封装具体算法,负责具体的计算过程。一部分是环境类context,context接受客户请求,并将请求委托给某个策略类。 传统面向对象实现方式: var performa 阅读全文
posted @ 2016-02-18 11:39 倾其一生 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 单例模式的定义:保证一个类只有一个实例,并且提供一个可以访问它的全局访问点。 以类为中心的传统面向对象语言的单例模式实现: 普通单例模式: var Singleton = function(name){ this.name = name; this.instance = null; } Single 阅读全文
posted @ 2016-02-18 11:19 倾其一生 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 面向对象的一些设计原则和编程技巧 1. 单一职责 确保一个对象只有一个功能,只干一件事,引起对象变化的原因只有一个 2. 开放-封闭原则 对外可扩展,对内不可修改 3.最少知识原则 采用面向接口的编程 当我们进行代码重构的时候,可以使用一些小技巧,这小小技巧虽说算不上什么模式,但也在优化代码结构,增 阅读全文
posted @ 2016-02-18 11:09 倾其一生 阅读(204) 评论(0) 推荐(0) 编辑