编写可维护的JavaScriptPDF电子书下载
- 电子书积分:10 积分如何计算积分?
- 作 者:(美)NicholasC·Zakas
- 出 版 社:北京:人民邮电出版社
- 出版年份:2013
- ISBN:9787115310088
- 页数:227 页
第一部分 编程风格 1
第1章 基本的格式化 4
1.1 缩进层级 4
1.2 语句结尾 7
1.3 行的长度 8
1.4 换行 9
1.5 空行 10
1.6 命名 11
1.6.1 变量和函数 12
1.6.2 常量 13
1.6.3 构造函数 14
1.7 直接量 15
1.7.1 字符串 15
1.7.2 数字 16
1.7.3 null 17
1.7.4 undefined 18
1.7.5 对象直接量 19
1.7.6 数组直接量 20
第2章 注释 21
2.1 单行注释 21
2.2 多行注释 23
2.3 使用注释 24
2.3.1 难于理解的代码 25
2.3.2 能被误认为错误的代码 26
2.3.3 浏览器特性hack 26
2.4 文档注释 27
第3章 语句和表达式 30
3.1 花括号的对齐方式 31
3.2 块语句间隔 32
3.3 switch语句 33
3.3.1 缩进 33
3.3.2 case语句的“连续执行” 35
3.3.3 default 36
3.4 with语句 37
3.5 for循环 37
3.6 for-in循环 39
第4章 变量、函数和运算符 41
4.1 变量声明 41
4.2 函数声明 44
4.3 函数调用间隔 45
4.4 立即调用的函数 46
4.5 严格模式 47
4.6 相等 49
4.6.1 eval() 51
4.6.2 原始包装类型 52
第二部分 编程实践 54
第5章 UI层的松耦合 55
5.1 什么是松耦合 56
5.2 将JavaScript从CSS中抽离 57
5.3 将CSS从JavaScript中抽离 58
5.4 将JavaScript从HTML中抽离 60
5.5 将HTML从JavaScript中抽离 62
5.5.1 方法1:从服务器加载 63
5.5.2 方法2:简单客户端模板 64
5.5.3 方法3:复杂客户端模板 67
第6章 避免使用全局变量 70
6.1 全局变量带来的问题 70
6.1.1 命名冲突 71
6.1.2 代码的脆弱性 71
6.1.3 难以测试 72
6.2 意外的全局变量 72
避免意外的全局变量 73
6.3 单全局变量方式 74
6.3.1 命名空间 76
6.3.2 模块 78
6.4 零全局变量 81
第7章 事件处理 83
7.1 典型用法 83
7.2 规则1:隔离应用逻辑 84
7.3 规则2:不要分发事件对象 85
第8章 避免“空比较” 88
8.1 检测原始值 88
8.2 检测引用值 90
8.2.1 检测函数 92
8.2.2 检测数组 94
8.3 检测属性 95
第9章 将配置数据从代码中分离出来 98
9.1 什么是配置数据 98
9.2 抽离配置数据 99
9.3 保存配置数据 100
第10章 抛出自定义错误 103
10.1 错误的本质 103
10.2 在JavaScript中抛出错误 104
10.3 抛出错误的好处 105
10.4 何时抛出错误 106
10.5 try-catch语句 107
10.6 错误类型 109
第11章 不是你的对象不要动 112
11.1 什么是你的 112
11.2 原则 113
11.2.1 不覆盖方法 113
11.2.2 不新增方法 114
11.2.3 不删除方法 116
11.3 更好的途径 117
11.3.1 基于对象的继承 118
11.3.2 基于类型的继承 119
11.3.3 门面模式 120
11.4 关于Polyfill的注解 121
11.5 阻止修改 122
第12章 浏览器嗅探 125
12.1 User-Agent检测 125
12.2 特性检测 127
12.3 避免特性推断 129
12.4 避免浏览器推断 130
12.5 应当如何取舍 134
第三部分 自动化 135
第13章 文件和目录结构 137
13.1 最佳实践 137
13.2 基本结构 138
第14章 Ant 143
14.1 安装 143
14.2 配置文件 143
14.3 执行构建 145
14.4 目标操作的依赖 145
14.5 属性 146
14.6 Buildr项目 148
第15章 校验 149
15.1 查找文件 149
15.2 任务 150
15.3 增强的目标操作 152
15.4 其他方面的改进 153
15.5 Buildr任务 154
第16章 文件合并和加工 156
16.1 任务 156
16.2 行尾结束符 157
16.3 文件头和文件尾 158
16.4 加工文件 159
第17章 文件精简和压缩 163
17.1 文件精简 163
17.1.1 使用YUI Compressor精简代码 165
17.1.2 用Closure Compiler精简 167
17.1.3 使用UglifyJS精简 169
17.2 压缩 170
17.2.1 运行时压缩 171
17.2.2 构建时压缩 171
第18章 文档化 175
18.1 JSDoc Toolkit 175
18.2 YUI Doc 177
第19章 自动化测试 180
19.1 YUI Test Selenium引擎 180
19.1.1 配置一台Selenium服务器 181
19.1.2 配置YUI Test Selenium引擎 181
19.1.3 使用YUI Test Selenium引擎 181
19.1.4 Ant的配置写法 183
19.2 Yeti 184
19.3 PhantomJS 186
19.3.1 安装及使用 186
19.3.2 Ant的配置写法 187
19.4 JsTestDriver 188
19.4.1 安装及使用 188
19.4.2 Ant的配置写法 189
第20章 组装到一起 191
20.1 被忽略的细节 191
20.2 编制打包计划 192
20.2.1 开发版本的构建 193
20.2.2 集成版本的构建 194
20.2.3 发布版本的构建 195
20.3 使用CI系统 196
20.3.1 Jenkins 196
20.3.2 其他CI系统 199
附录A JavaScript编码风格指南 200
附录B JavaScript工具集 223
- 《观赏水族设施设计与维护》王伟主编 2019
- 《特大型集群化空分设备运行与维护》郭中山,姜永,李登桐 2019
- 《中国骨干旅游高职院校教材编写出版项目 中国饮食文化》邵万宽 2016
- 《海洋结构物设计、建造与维护》(埃)Mohamed A.El Reedy著 2016
- 《柴油机维护检修》张丙君编著 1965
- 《无人机组装、调试与维护》石磊 2019
- 《重症监护仪器使用与维护》王懿主编 2008
- 《汽车维护》甘路 2014
- 《管理信息系统运行与维护教程》王洪利主编 2015
- 《农产品检验检测机构质量体系文件编写指南》周兴梅编著 2018
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019