JavaScript学习指南(第2版,修订版)
Shelley Powers
谢春祥 等译
出版时间:2012年11月
页数:342
“无论你是初学者还是有经验的程序员在学习一门新语言,我都会强烈建议你阅读本书。Shelley所采用的直观易懂的教学方法,能够帮助你掌握该语言的基础和细节,以便你能够在自己网站上更好地使用它。”
——Anthony T. Holdener III, Ajax: The Definitive Guide一书的作者

通过列举JavaScript应用的最佳实践和示例,本书展示了如何将该语言集成到浏览器环境中,以及如何在符合标准的网站中应用这些已通过实践验证的编码技术。

本书内容包括:
· JavaScript应用程序的结构,包括基本的语句和程序控制结构;
· 标识JavaScript中的不同对象String、Number、 Boolean、函数等;
· 使用浏览器调试工具和排错技术;
· 事件处理机制、表单事件以及带表单的JavaScript应用程序;
· 基于浏览器对象模型(BOM)、文档对象模型(DOM)以及所创建的自定义对象完成开发;
· 浏览器端的cookie及更新的客户端存储技术;
· 在Ajax应用程序中使用XML或JSON表示法的细节。

本书遵循已被验证的学习法则,帮助读者逐步理解各种概念,掌握在各种浏览器中创建强大的、快速响应的应用程序的方法。
  1. 第1章 hello javascript! 
  2. 1.1 “hello world!”程序 
  3. 1.2 第二个“hello world!”程序 
  4. 1.2.1 script标签 
  5. 1.2.2 javascript、ecmascript和jscript的比较
  6. 1.2.3 在javascript中定义函数 
  7. 1.2.4 事件处理程序 
  8. 1.2.5 浏览器对象document 
  9. 1.2.6 property操作符 
  10. 1.2.7 var关键字和作用域 
  11. 1.2.8 javascript语句 
  12. 1.2.9 注释
  13. 1.2.10 你没看到的:html注释和cdata区段
  14. 1.3 javascript文件
  15. 1.4 可访问性和javascript最佳实践
  16. 1.4.1 可访问性指南
  17. 1.4.2 noscript
  18. 第2章 javascript数据类型和变量
  19. 2.1 标识变量
  20. .2.1.1 命名规范 
  21. 2.2 基本类型
  22. 2.3 string数据类型
  23. 2.3.1 字符串转义序列
  24. 2.3.2 字符串编码
  25. 2.3.3 字符串转换
  26. 2.4 boolean数据类型
  27. 2.5 number数据类型
  28. 2.6 null和undefined变量
  29. 2.7 常量:已命名数值,但不是变量
  30. 2.8 知识测验
  31. 2.9 测验答案
  32. 第3章 运算符和语句
  33. 3.1 javascript语句的格式
  34. 3.2 赋值语句
  35. 3.2.1 算术运算符
  36. 3.2.2 一元运算符
  37. 3.2.3 运算符的优先级
  38. 3.2.4 带运算符的快捷赋值
  39. 3.2.5 位操作运算符
  40. 3.3 条件语句和程序流
  41. 3.3.1 if…else条件语句
  42. 3.3.2 switch条件语句
  43. 3.4 条件运算符
  44. 3.4.1 相等和恒等运算符
  45. 3.4.2 其他关系运算符
  46. 3.4.3 javascript中唯一的三元运算符
  47. 3.5 逻辑运算符
  48. 3.6 高级语句:循环
  49. 3.6.1 while循环
  50. 3.6.2 do…while循环
  51. 3.6.3 for循环
  52. 3.7 知识测验
  53. 3.8 测验答案
  54. 第4章 javascript对象
  55. 4.1 基本数据类型对象
  56. 4.2 布尔值、数字和字符串
  57. 4.2.1 boolean对象
  58. 4.2.2 number对象、静态属性及实例方法 
  59. 4.2.3 string对象
  60. 4.3 正则表达式和regexp 
  61. 4.3.1 regexp方法:test和exec 
  62. 4.3.2 正则表达式的应用
  63. 4.4 date对象
  64. 4.5 math对象
  65. 4.5.1 math的属性
  66. 4.5.2 math的方法
  67. 4.6 javascript数组
  68. 4.6.1 fifo队列
  69. 4.7 知识测验
  70. 4.8 测验答案
  71. 第5章 函数
  72. 5.1 声明式的函数
  73. 5.1.1 函数的命名约定和大小
  74. 5.1.2 函数返回值和参数
  75. 5.2 匿名函数
  76. 5.3 函数字面量
  77. 5.3.1 函数和递归
  78. 5.3.2 嵌套函数、函数闭包与内存泄漏
  79. 5.3.3 回调函数
  80. 5.4 函数类型小结
  81. 5.5 函数作用域
  82. 5.6 函数就是一个对象
  83. 5.7 知识测验
  84. 5.8 测验答案
  85. 第6章 排错、调试及跨浏览器问题
  86. 6.1 调试的简单方法
  87. 6.2 浏览器提供的开发和调试工具
  88. 6.2.1 firefox和firebug 
  89. 6.2.2 使用console.log 
  90. 6.2.3 firefox、web developer toolkit和noscript 
  91. 6.2.4 opera和dragonfly
  92. 6.2.5 safari/webkit和web inspector 
  93. 6.2.6 internet explorer 
  94. 6.3 处理浏览器之间的差异
  95. 6.3.1 对象检测
  96. 6.3.2 对象检测失败的场合
  97. 6.3.3 doctype、x-ua-compatible和quirks模式 
  98. 6.3.4 阻止向后兼容性:ie 8.0中的元标签http-equiv
  99. 6.4 知识测验
  100. 6.5 测验答案
  101. 第7章 捕获事件
  102. 7.1 事件
  103. 7.2 0级事件处理
  104. 7.2.1 event对象
  105. 7.2.2 事件冒泡
  106. 7.2.3 事件处理程序和this
  107. 7.3 dom level 2事件模型 
  108. 7.4 知识测验
  109. 7.5 测验答案
  110. 第8章 表单、表单事件及验证
  111. 8.1 为表单添加事件:不同方法
  112. 8.1.1 跨浏览器兼容的事件处理
  113. 8.1.2 取消一个事件
  114. 8.2 选择列表框元素
  115. 8.2.1 动态修改选择列表框
  116. 8.2.2 选择列表框和自动选择
  117. 8.3 单选按钮和复选框
  118. 8.4 文本框、文本区域、密码框和隐藏表单字段的输入元素
  119. 8.5 input元素字段和基于正则表达式的验证
  120. 8.6 表单、沙箱和xss 
  121. 8.7 知识测验
  122. 8.8 测验答案
  123. 第9章 浏览器之谜
  124. 9.1 浏览器结构概述
  125. 9.2 window对象
  126. 9.3 窗口的创建和控制
  127. 9.3.1 对话框:alert、confirm和prompt 
  128. 9.3.2 创建自定义窗口
  129. 9.3.3 修改窗口
  130. 9.4 frame对象
  131. 9.4.1 location对象
  132. 9.4.2 基于iframe的远程脚本
  133. 9.5 添加并控制定时器
  134. 9.6 history、screen和navigator对象
  135. 9.6.1 history对象
  136. 9.6.2 screen对象
  137. 9.6.3 navigator对象
  138. 9.6.4 history、screen和navigator属性的实际应用
  139. 9.7 document对象
  140. 9.7.1 链接
  141. 9.7.2 图像
  142. 9.8 innerhtml 
  143. 9.9 知识测验
  144. 9.10 测验答案
  145. 第10章 cookie和其他客户端存储技术
  146. 10.1 javascript沙箱与cookie安全
  147. 10.1.1 同源安全策略
  148. 10.1.2 使用document.domain 
  149. 10.2 cookie全解
  150. 10.3 flash共享对象、google gears和html5 dom存储
  151. 10.4 知识测验
  152. 10.5 测验答案
  153. 第11章 dom或以树型展示的web页面 
  154. 11.1 两个接口的传说
  155. 11.2 dom html api 
  156. 11.2.1 dom html对象及其属性
  157. 11.2.2 dom(html)集合
  158. 11.3 理解dom:core api 
  159. 11.3.1 dom树
  160. 11.3.2 节点属性和方法
  161. 11.3.3 dom核心文档对象
  162. 11.4 元素及其上下文内访问
  163. 11.5 修改文档树
  164. 11.6 知识测验
  165. 11.7 测验答案
  166. 第12章 动态页面
  167. 12.1 javascript、css和dom 
  168. 12.2 字体和文本
  169. 12.2.1 字体样式属性
  170. 12.2.2 文本属性
  171. 12.3 定位和动画
  172. 12.3.1 动态定位
  173. 12.3.2 拖放操作
  174. 12.4 大小和修剪
  175. 12.4.1 溢出和动态内容
  176. 12.4.2 修剪矩形
  177. 12.5 显示、可视性和不透明性
  178. 12.5.1 实现正确效果的正确工具
  179. 12.5.2 即时信息
  180. 12.6 再探dom:可折叠表单、查询选择器和类名
  181. 12.7 知识测验
  182. 12.8 测验答案
  183. 第13章 创建自定义javascript对象
  184. 13.1 javascript对象和原型
  185. 13.2 创建自定义javascript对象
  186. 13.2.1 深入函数
  187. 13.2.2 公有和私有属性以及何时使用两种属性
  188. 13.2.3 getter和setter 
  189. 13.3 对象封装
  190. 13.4 构造函数链和javascript继承
  191. 13.5 一次性对象
  192. 13.6 对象库:为复用而封装对象
  193. 13.7 高级错误处理技术(try、throw和catch)
  194. 13.8 知识测验
  195. 13.9 测验答案
  196. 第14章 使用ajax 
  197. 14.1 ajax的工作原理
  198. 14.2 hello ajax world
  199. 14.3 xmlhttprequest对象及请求的准备与发送
  200. 14.3.1 对象,对象,什么拥有对象
  201. 14.3.2 xmlhttprequest对象的方法
  202. 14.4 处理web请求的返回结果
  203. 14.4.1 检查ajax请求的readystate和status值
  204. 14.4.2 处理web请求的结果
  205. 14.5 ajax:不仅是代码
  206. 14.5.1 ajax的动态特性
  207. 14.5.2 ajax的可访问性和适度降格
  208. 14.5.3 安全和工作区
  209. 14.6 javascript和ajax库
  210. 14.7 知识测验
  211. 14.8 测验答案
  212. 第15章 ajax数据:xml或json 
  213. 15.1 xml格式的ajax结果
  214. 15.1.1 数据的mime类型
  215. 15.1.2 在服务器端生成xml数据
  216. 15.1.3 在客户端处理xml数据
  217. 15.2 json 
  218. 15.2.1 简单的json应用程序
  219. 15.2.2 json对象
  220. 15.3 知识测验
  221. 15.4 测验答案
书名:JavaScript学习指南(第2版,修订版)
作者:Shelley Powers
译者:谢春祥 等译
国内出版社:人民邮电出版社
出版时间:2012年11月
页数:342
书号:978-7-115-29633-7
原版书书名:Learning JavaScript, 2nd Edition
原版书出版商:O'Reilly Media
Shelley Powers
 
Shelley Powers从JavaScript初次开发到现在最新的图形和设计工具发布,Shelley Powers已经从事Web技术工作和写作达15年之久。她最近在O’Reilly出版的图书包括语义网、Ajax、JavaScript和Web图形。她是一位热情的业余摄影师,也是Web开发的狂热爱好者,她从JavaScript刚发布时,就开始使用和编写Web技术相关书籍。她之前在O’Reilly出版了8本书,包括Developing ASP Components(2001),Adding Ajax(2007)和JavaScript Cookbook(2010)。