2016年7月19日

编写可维护的JavaScript-第7章-事件处理

摘要: 1.隔离应用逻辑 应该将事件和要处理的事情拆分开,做到处理的事情可以在不需要模拟“点击”之类的操作来触发。 2.不要分发事件对象 只将event对象传给事件处理方法,然后拿到所需要的数据传给别的应用逻辑。 阅读全文

posted @ 2016-07-19 20:03 JayusTree 阅读(71) 评论(0) 推荐(0)

编写可维护的JavaScript-第6章-避免使用全局变量

摘要: 1.全局变量带来的问题 命名冲突 代码脆弱 难以测试 2.意外的全局变量 不小心忽略了var,导致意外的创建了全局变量 3.单全局变量方式 类似于jQuery的$,做到整个库类只有一个全局变量 命名空间 模块(require等) 4.零全局变量 使用闭包做到零全局变量 只有代码不被其他代码所依赖的情 阅读全文

posted @ 2016-07-19 13:26 JayusTree 阅读(103) 评论(0) 推荐(0)

编写可维护的JavaScript-第5章-UI层的松耦合

摘要: 2.将JavaScript从CSS中抽离 别用CSS表达式(现在也没有了) 3.将CSS从JavaScript中抽离 不要直接使用JS给HTML设置样式,使用className作为CSS和JavaScript的桥梁 4.将JavaScript从HTML中抽离 最好将所有JS全部外置出来 5.将HTM 阅读全文

posted @ 2016-07-19 11:46 JayusTree 阅读(101) 评论(0) 推荐(0)

编写可维护的JavaScript-第4章-变量、函数和运算符

摘要: 1.变量声明 使用单var语句,将所有var语句合并成一个语句,赋值运算符对其。 2.函数声明 函数必须在使用前声明 函数声明不应该出现在语句块之内 3.函数调用间隔 推荐在函数名和左括号之间没有空格。 4.立即调用的函数 将立即执行的函数用一对圆括号包裹起来(闭包什么的)。 5.严格模式 不要在全 阅读全文

posted @ 2016-07-19 10:40 JayusTree 阅读(124) 评论(0) 推荐(0)

2016年7月18日

编写可维护的JavaScript-第3章-语句和表达式

摘要: 1.花括号的对齐方式 使用Java风格的花括号对齐方式 2.块语句间隔 推荐左右括号左右都加一个空格 3.switch语句 case语句如果想使用“连续执行”,必须写好注释 default没有的情况下,应该写明注释,然后省略default 4.with语句 别用 5.for循环 尽可能避免使用con 阅读全文

posted @ 2016-07-18 20:52 JayusTree 阅读(75) 评论(0) 推荐(0)

编写可维护的JavaScript-第2章-注释

摘要: 1.单行注释 单独一行的单行注释前一行应该为空 单独一行的单行注释应该和要解释的一行缩进相同 和代码在一行的单行注释应和代码有间隔 数行的单行注释应该直接变成多行注释 2.多行注释 其他的原则和单行注释一样 3.何时应该使用注释 难以理解的代码 可能被误认为错误的代码 4.文档注释 当使用文档注释的 阅读全文

posted @ 2016-07-18 20:17 JayusTree 阅读(94) 评论(0) 推荐(0)

编写可维护的JavaScript-第1章-基本的格式化

摘要: 1.缩进层级:最好使用4个空格来缩进,使用制表符和其他方式也可以,但必须统一。 2.语句结尾:结尾请使用分号。 3.行的长度:每行不要超过80字符。 4.换行:在运算符后换行,下一行增加两个层级的缩进(给变量赋值的时候除外)。 5.空行:这些场景适合添加空行:方法之间、局部变量和第一条语句之间、注释 阅读全文

posted @ 2016-07-18 19:55 JayusTree 阅读(125) 评论(0) 推荐(0)

2016年5月19日

JavaScript设计模式与开发实践-第7章-迭代器模式

摘要: 迭代器模式的定义:提供一种方法访问一个聚合对象中的各个对象。可以做到不关心对象的内部构造,也可以按顺序的访问每个原宿。 内部迭代器:外部只需要一次初始调用 外部迭代器:在外部必须进行显式的迭代 中止迭代器:给回调器设置callback函数返回false时跳出循环 迭代器的应用举例:文件上传有多种方式 阅读全文

posted @ 2016-05-19 00:10 JayusTree 阅读(130) 评论(0) 推荐(0)

2016年5月17日

JavaScript设计模式与开发实践-第6章-代理模式

摘要: 代理模式的定义:代理模式为一个对象提供一个经纪人,以便控制对它的访问 虚拟代理:虚拟代理把一些开销很大的对象,延迟到真正需要的时候才去创建 使用虚拟代理实现图片预加载 使用代理的意义: 单一职责原则 图片预加载功能不引入任何模式也能实现,但是“管理真实图片”和“管理预加载”的代码就会混杂在一起 如果 阅读全文

posted @ 2016-05-17 22:49 JayusTree 阅读(121) 评论(0) 推荐(0)

2016年5月16日

JavaScript设计模式与开发实践-第5章-策略模式

摘要: 策略模式的定义:定义一系列算法,并封装起来,同时将算法的“实现”和“使用”分开 基于策略模式的程序: 至少包含两个部分策略类和环境类(Context) 策略类包含算法具体的实现 环境类用于接受客户的请求,然后把请求委托给一个策略类 基于传统面向对象的实现比较冗余,基于JS的实现如下: 使用策略模式的 阅读全文

posted @ 2016-05-16 21:41 JayusTree 阅读(97) 评论(0) 推荐(0)

导航