摘要: 1. 装饰者模式给对象动态增加职责的方式称为装饰者模式。Function.prototype.before = function(beforefn){ var _self = this; return function(){ beforefn.apply(this,arguments); retur... 阅读全文
posted @ 2015-10-11 18:28 S&L·chuck 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 1. 中介者模式所有对象通过中介者进行通信var playDirector = (function(){ var players = []; var options = {}; options.add = function(p){ players.push(p); } options.die = f... 阅读全文
posted @ 2015-10-11 18:27 S&L·chuck 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 1. 职责链模式将对象连成一条链,并沿着这条链传递请求,直到有一个对象处理它为止。var chain = function(fn){ this.fn = fn; this.successor = null;}chain.prototype.setNextSuccessor = function(su... 阅读全文
posted @ 2015-10-11 18:26 S&L·chuck 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 1. 发布-订阅模式var observe = (function(){ var events = {}, listen, trigger, remmove; listen = function(key,fn){ if(!events[key]){ events[key] = []; } event... 阅读全文
posted @ 2015-10-11 18:25 S&L·chuck 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 1. 单例模式单例模式的核心是确保只有一个实例,并提供全局访问。function xx(name){};Singleton.getInstance = (function(){ var instance = null; return function(name){ if(!instance){ in... 阅读全文
posted @ 2015-10-11 18:24 S&L·chuck 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 1. 策略模式策略模式定义一系列的算法,把它们封装起来,并且可以互相替换。var strategies = { isNonEmpty: function(value,errMsg){ if(value === ''){ return errMsg; } }, minLength:function(v... 阅读全文
posted @ 2015-10-11 18:24 S&L·chuck 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 1. this,call&apply1.1 thisthis是Javascript语言的一个关键字。它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。1.1.1 普通函数调用这是函数的最通常用法,属于全局性调用,因此this就代表全局对象Global。请看下面这段代码,它的运行结果是1。... 阅读全文
posted @ 2015-10-10 18:49 S&L·chuck 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 1. 新兴的APIrequestAnimationFrame():是一个着眼于优化js动画的api,能够在动画运行期间发出信号。通过这种机制,浏览器就能够自动优化屏幕重绘操作Page Visibility API:让开发人员知道用户什么时候正在看着页面,而什么时候页面是隐藏。Geolocation ... 阅读全文
posted @ 2015-05-17 21:24 S&L·chuck 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 1. 最佳实践l 来自其他语言的代码约定可以用于决定何时进行注释,以及如何进行缩进,不过JavaScript需要针对其松散类型的性质创造一些特殊的约定l javascript应该定义行为,html应该定义内容,css应该定义外观l 这些职责上的混乱会导致难以调试的错误和维护上的问题l javascr... 阅读全文
posted @ 2015-05-17 20:52 S&L·chuck 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 1. 数据存储1.1 cookieHTTP Cookie, cookie,最初用来在客户端存储回话信息。(1). 限制,不同浏览器对特定域名下的cookie 的个数有限制,每个域名下最好不要操过20个cookie(2). cookie的构成名称:一个唯一确定cookie的名称,不区分大小写,cook... 阅读全文
posted @ 2015-05-17 18:29 S&L·chuck 阅读(196) 评论(0) 推荐(0) 编辑