前言 1
第1章 简介 5
模式 5
JavaScript:基本概念 7
ECMAScript 5 9
JSLint 10
Console 10
第2章 基本技巧 12
编写可维护的代码 12
尽量少用全局变量 13
for循环 18
for-in循环 20
不要增加内置的原型 23
switch模式 23
避免使用隐式类型转换 24
使用parseInt()的数值约定 26
编码约定 27
命名约定 31
编写注释 33
编写API文档 34
编写可读性强的代码 38
同行互查 39
在正式发布时精简代码 39
运行JSLint 40
小结 41
第3章 字面量和构造函数 42
对象字面量 42
自定义构造函数 45
强制使用new的模式 47
数组字面量 50
JSON 52
正则表达式字面量 54
基本值类型包装器 55
错误对象 57
小结 58
第4章 函数 59
背景 59
回调模式 64
返回函数 69
自定义函数 70
即时函数 72
即时对象初始化 75
初始化时分支 77
函数属性——备忘模式 78
配置对象 80
Curry 81
小结 86
第5章 对象创建模式 89
命名空间模式 89
声明依赖关系 93
私有属性和方法 94
模块模式 99
沙箱模式 103
静态成员 108
对象常量 111
链模式 113
method()方法 115
小结 116
第6章 代码复用模式 117
传统与现代继承模式的比较 117
使用类式继承时的预期结果 118
类式继承模式#1——默认模式 119
类式继承模式#2——借用构造函数 122
类式继承模式#3——借用和设置原型 125
类式继承模式#4——共享原型 126
类式继承模式#5——临时构造函数 128
Klass 130
原型继承 133
通过复制属性实现继承 136
借用方法 139
小结 142
第7章 设计模式 143
单体模式 143
工厂模式 148
迭代器模式 151
装饰者模式 153
策略模式 158
外观模式 160
代理模式 162
中介者模式 170
观察者模式 173
小结 181
第8章 DOM和浏览器模式 182
关注分离 182
DOM脚本 184
事件 186
长期运行脚本 190
远程脚本 192
配置JavaScript 197
载入策略 199
小结 208