图书介绍

JavaScript权威指南 ECMAScript5+HTML5DOM+HTML5BOMpdf电子书版本下载

JavaScript权威指南  ECMAScript5+HTML5DOM+HTML5BOM
  • 张亚飞主编 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302264286
  • 出版时间:2011
  • 标注页数:629页
  • 文件大小:182MB
  • 文件页数:646页
  • 主题词:JAVA语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页 直链下载[便捷但速度慢]   [在线试读本书]   [在线获取解压码]

下载说明

JavaScript权威指南 ECMAScript5+HTML5DOM+HTML5BOMPDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第Ⅰ篇ECMAScript和JavaScript语言基础入门篇 2

第1章 正确认识ECMAScript5和JavaScript 2

1.1 ECMAScript和JavaScript的关系 3

1.1.1关于标准和实现 3

1.1.2 JavaScript与ECMVAScript版本的关系 4

1.2有关JavaScript的认识 5

1.2.1区分JavaScript和JScript 5

1.2.2 JavaScript不是解释型Java语言 5

1.2.3什么是脚本语言 6

1.2.4区分客户端和服务端JavaScript 6

第2章 准备开发环境和运行环境 8

2.1 正确认识JavaScript的开发工具 9

2.1.1 Dreamweaver的安装和配置向导 9

2.1.2 Aptana Studio的安装和配置向导 10

2.2准备执行环境 11

2.2.1浏览器的发展史 11

2.2.2安装浏览器 12

2.2.3在浏览器中启用JavaScript执行环境 14

第3章 在网页中编写JavaScript脚本代码 15

3.1创建第一个JavaScript应用程序 16

3.1.1使用Dreamweaver编写JavaScript 16

3.1.2使用Aptana Studio编写JavaScript 18

3.2在HTML网页中书写JavaScript脚本代码 22

3.2.1使用script元素定义脚本代码 22

3.2.2在事件属性值中定义脚本 24

3.2.3在超链接中定义脚本 27

3.3浏览器不支持脚本时应注意的问题 28

3.3.1 noscript元素 28

3.3.2关于隐藏脚本数据 29

3.4声明脚本语言 29

3.4.1默认的脚本语言 29

3.4.2脚本语言的本地声明 30

第4章 程序开发的基石——声明和使用变量 32

4.1变量的声明 33

4.1.1声明和命名变量 33

4.1.2变量和标识符的命名规范 34

4.1.3变量的数据类型 34

4.1.4自定义常量和内建常量 38

4.2在程序中使用变量 39

4.2.1为变量赋值和更改变量值 39

4.2.2使用变量和获取变量值 41

4.3变量的传值和传址 42

4.3.1传值变量——按值传递 42

4.3.2传址变量——按引用传递 43

4.4内存使用规则——堆和栈 43

4.4.1栈的使用规则 44

4.4.2堆的使用规则 44

4.4.3易犯的错误 45

4.5数据类型转换 46

第5章JavaScript语法规范和良好的编程习惯 47

5.1空白和多行书写 48

5.2点语法 48

5.3花括号 49

5.4分号 49

5.5圆括号 50

5.6字母的大小写 50

5.7程序注释 51

5.7.1单行注释和尾随注释 51

5.7.2多行注释 51

5.7.3文档注释 52

5.7.4 HTML注释 52

5.8关键字 53

5.9培养良好的编程习惯 53

5.9.1通用的变量名、方法名和类名命名约定 53

5.9.2重构 55

5.9.3使用注释 55

5.10 ECMAScript5严格模式 56

5.10.1使用严格模式 56

5.10.2严格模式的特定要求 57

第6章 数据运算和运算规则 59

6.1 JavaScript表达式 60

6.1.1简单表达式和复杂表达式 60

6.1.2赋值表达式和单值表达式 60

6.2算术运算符 60

6.2.1算术运算符的使用 60

6.2.2进行算术运算时的注意事项 63

6.3赋值运算符 63

6.4字符串运算符 64

6.5比较运算符和逻辑运算符 65

6.5.1数据类型的影响 66

6.5.2全等运算符 66

6.5.3特殊值的比较 67

6.5.4易犯错的比较运算 68

6.6位运算符 68

6.7其他运算符 69

6.7.1三元条件运算符 69

6.7.2typeof运算符 70

6.7.3 instanceof运算符 71

6.7.4圆括号和逗号运算符的结合使用 71

6.7.5 delete运算符 71

6.7.6 void运算符 72

6.8运算符的使用规则 72

6.8.1运算符的优先级规则 72

6.8.2运算符的结合规则 72

6.9运行时进行类型检查 73

第7章 流程控制 75

7.1语句和语句块 76

7.2 if…else条件语句 76

7.3 switch条件语句 80

7.4 do…while循环 82

7.5 for循环 83

7.6 for…in循环 84

7.7 for each…in循环 85

7.8其他流程控制 86

7.8.1 break语句 86

7.8.2 continue语句 86

7.8.3标签语句 87

7.8.4 let语句 88

7.8.5 yield语句 88

7.9 with语句 89

7.10流程控制总结 90

第8章 内建的全局函数 91

8.1 eval()函数 92

8.2转义操作函数 92

8.2.1 escape()和unescape()函数 92

8.2.2 encodeURI()和decodeURI()函数 93

8.2.3 encodeURIComponent()和decodeURIComponent()函数 93

8.3转换函数 94

8.3.1 parseFloat()函数 94

8.3.2 parseInt()函数 94

8.3.3 Number()和String()函数 94

8.3.4 Boolean()函数 95

8.4判断函数 95

8.4.1 isFinite()函数 95

8.4.2 isNaN()函数 96

第9章 自定义函数 97

9.1函数的定义 98

9.2函数的调用 98

9.2.1在函数中定义参数的初始值 99

9.2.2嵌套函数的定义和调用 99

9.2.3条件函数的定义和调用 100

9.2.4特殊的调用方式 100

9.3使用函数表达式定义函数(匿名函数) 100

9.3.1函数表达式和函数语句的区别 100

9.3.2匿名自执行函数 102

9.4使用Function类定义函数 103

9.5变量的作用范围和生命周期 103

9.5.1了解变量的作用范围和生命周期 103

9.5.2局部变量的声明 104

9.5.3全局变量的声明 104

9.5.4全局变量和局部变量的使用 104

9.5.5易出错的变量使用 105

9.6形参和实参 106

9.7闭包函数(绑定函数) 107

9.7.1什么是闭包函数 107

9.7.2闭包函数常用的环境 108

9.7.3易犯的错误 109

9.8产生器 110

第Ⅱ篇JavaScript面向对象编程篇 112

第10章 面向对象编程(OOP)——创建类和使用类 112

10.1面向对象编程思想 113

10.1.1对象的抽象 113

10.1.2对象的使用 113

10.1.3易犯的错误 114

10.1.4面向对象程序设计的优点和基本特征 114

10.1.5面向对象和结构化程序设计的区别 115

10.2创建类 116

10.2.1创建一个JavaScript类 116

10.2.2类的定义 116

10.2.3关于构造器方法 117

10.2.4获取构造器方法 118

10.3类的使用 119

10.3.1创建类的实例 119

10.3.2访问对象属性 120

10.3.3调用对象方法 121

10.3.4调用静态方法和访问静态属性 122

10.4使用this关键字定义方法和属性 122

10.5使用prototype定义方法和属性 123

10.5.1使用prototype定义方法 123

10.5.2使用prototype定义属性 123

10.5.3关于prototype和_Proto_属性 124

10.6使用Object类为实例定义方法和属性 124

10.6.1使用return语句定义方法和属性 125

10.6.2使用prototype和Object配合为类定义方法和属性 125

10.7使用get和set存取器方法定义属性 126

10.8在类体内使用this关键字 127

10.8.1使用this时易犯的错误 128

10.8.2闭包方法(绑定方法)内的this关键字 129

10.8.3事件处理中的闭包 130

10.8.4另一个使用this时易犯的错误 131

第11章 建立更可靠的OOP程序——类和成员的访问控制 132

第12章 重复使用类——继承和组合 135

12.1类的继承 136

12.1.1创建子类 136

12.1.2使用基类的构造器方法 137

12.1.3检测继承关系 137

12.1.4使用$super实现访问基类 137

12.1.5创建子类时的注意事项 139

12.2扩展内建JavaScript类 139

12.3类的组合 139

12.3.1实现类的组合 139

12.3.2组合的优点 140

12.3.3了解is-a和has-a 141

12.3.4关于聚合和组合 141

第13章 静态成员、静态类和枚举(Enumeration) 142

13.1定义静态成员和静态类的意义 143

13.2创建静态成员 143

13.2.1使用静态成员 144

13.2.2静态成员和继承 144

13.2.3使用静态成员的注意事项 145

13.3静态类及其声明方法 145

13.4枚举(Enumeration) 146

13.4.1创建枚举 146

13.4.2使用枚举的优点 146

第14章 多态(Polymorphism)——重载和覆载 148

14.1方法的重载(overLoad) 149

14.1.1重载参数列表的数量 149

14.1.2重载参数列表的数据类型 150

14.2方法的覆载(overRide) 151

14.3属性的覆载 152

第15章 原型链本质论 153

15.1原型链的根源 154

15.1.1内部属性 154

15.1.2访问内部属性[Prototype] 155

15.2 prototype的作用——原型链的实现 155

15.2.1实现继承 156

15.2.2分享属性(和方法) 156

15.2.3 _proto_…和prototype属性的区别 157

15.2.4使用ECMAScript5新增的原型处理功能 157

15.3检查原型链 158

15.3.1查看对象是否在指定对象的原型链中 158

15.3.2查看指定对象是否定义了特定属性和方法 159

15.3.3使用hasOwnProperty()方法过滤原型链 159

15.3.4查看指定对象是否定义了特定属性且可以枚举 160

第16章ECMAScript5增强的对象模型 161

16.1属性和描述符 162

16.1.1易犯的错误 162

16.1.2使用ECMAScript 5增强的对象模型定义属性 162

16.1.3定义get和set存取器方法 163

16.1.4一次定义多个属性 164

16.1.5获取特定属性的属性描述符 164

16.2枚举属性 165

16.2.1 Object.keys(obj)方法 165

16.2.2 Object.getOwnProperty Names(obj)方法 165

16.3密封对象和动态对象 166

16.3.1密封对象不允许添加成员 166

16.3.2密封对象不允许添加和删除成员 167

16.3.3完全密封对象 168

16.3.4易犯的错误 170

16.4根据原型创建对象 171

第17章 处理字符串——String类和正则表达式 173

17.1正则表达式语法 174

17.1.1正则表达式的基本语法 174

17.1.2优先权顺序 179

17.2使用RegExp处理字符串正则匹配 179

17.2.1创建一个RegExp对象 179

17.2.2使用exec()和test()方法进行正则匹配 180

17.3使用String类处理字符串 181

17.3.1 String类的方法和属性 182

17.3.2创建打字机效果 183

17.3.3使用match()方法 184

17.3.4使用replace()方法 185

17.3.5使用$替换变量 185

17.3.6使用search()方法 186

17.3.7使用split()方法 187

17.3.8创建HTML格式的字符串 187

第18章 数组、多维数组和复合数组(哈希映射) 189

18.1创建数组 190

18.1.1创建数组的基本方法 190

18.1.2使用索引数组 190

18.1.3使用全局函数Array()时的注意事项 191

18.2实现和使用多维数组 192

18.3使用Array API处理数组 193

18.3.1常用的范例 194

18.3.2 ECMAScript 5新增方法的使用 195

18.3.3数组的排序 199

18.4克隆数组 201

18.4.1浅表克隆 201

18.4.2深度克隆 201

18.5创建和使用复合数组 203

18.5.1使用Object对象创建复合数组 203

18.5.2使用Array对象创建复合数组 204

18.5.3遍历复合数组 204

18.6哈希表 205

18.6.1实现哈希表 205

18.6.2使用哈希表 207

18.7 Array推知 208

第19章 处理日期和时间 210

19.1使用Date类处理日期和时间 211

19.1.1返回当前时间和日期 213

19.1.2返回特定的时间和日期 213

19.1.3获取特定时间和日期字段 213

19.1.4设置特定时间和日期字段 214

19.1.5使用parse()方法解析日期字符串 214

19.1.6使用Date.UTC()方法返回时间戳 215

19.2实现日期输入控件 215

第20章 其他JavaScript内建类(核心对象) 220

20.1使用Boolean类处理逻辑值 221

20.2使用Number类进行数字类型转换 221

20.3使用Math类进行复杂的数学运算 223

20.4使用Function和arguments类 225

20.4.1 Function类 225

20.4.2 Arguments类和arguments属性 228

20.5 JSON操作 229

20.5.1序列化JavaScript数据为JSON数据 230

20.5.2逆序列化JSON数据为JavaScript数据 232

第Ⅲ篇 HTML5BOM篇 234

第21章BOM之源——window对象 234

21.1定时器——间隔调用和延迟调用 235

21.1.1使用setlnterval()和clearInterval()方法实现间隔调用 235

21.1.2范例——创建打字机效果 235

21.1.3使用setTimeout()和clearTimeout()方法实现延迟调用 236

21.1.4易犯的错误 236

21.1.5强制清除 237

21.2基本的交互操作 237

21.2.1警告对话框 237

21.2.2确认对话框 238

21.2.3提示输入消息对话框 238

21.2.4使用增强的交互式对话框 239

21.2.5范例——使用交互式对话框相互传值 240

21.2.6打印 242

21.3窗口交互操作 243

21.3.1打开新窗口 243

21.3.2关闭窗口 245

21.3.3取消文档加载 245

21.3.4获取窗口引用 245

21.3.5调整窗口的焦点 246

21.4网页和浏览器交互 246

第22章BOM基本应用——管理浏览历史、解析地址和获取浏览器信息 247

22.1浏览历史管理 248

22.2解析地址 249

22.3获取浏览器信息 251

22.3.1遍历navigator对象成员 251

22.3.2检测浏览器类型 252

22.3.3自定义架构处理 253

22.3.4自定义内容类型处理 254

22.3.5手动处理storage独占访问权 255

22.3.6检测脱机模式 255

22.4非标准应用 256

22.4.1 screen对象 257

22.4.2 clipboardData对象 257

第23章BOM新成就(1)——客户端数据存储技术 259

23.1 Web存储 260

23.2本地存储和会话存储 260

23.2.1在客户端持久存储数据 260

23.2.2关于浏览器兼容 261

23.2.3在会话期存储数据 262

23.3 Storage接口 263

23.3.1获取和更新存储 265

23.3.2清除存储 266

23.3.3清除指定的键 266

23.3.4添加新键和更新键值 266

23.4 storage事件 267

23.5 Web SQL Database 268

23.5.1第1个Web SQL Database 应用 268

23.5.2使用Web SQL Database的基本步骤 270

23.6异步数据库 271

23.6.1执行数据库事务 272

23.6.2数据库版本管理 274

23.6.3执行SQL语句 274

23.7同步数据库 276

23.7.1执行数据库事务 276

23.7.2数据库版本管理 277

23.7.3执行SQL语句 278

23.8处理数据库操作结果 278

23.9错误和异常 280

23.10在开发人员工具中使用SQL语句 281

23.11 SQLite SQL语法和数据库的数据类型 281

23.12 SQL注入缺陷和参数化查询 283

第24章BOM新成就(2)——新的服务器通信技术 284

24.1服务器推送技术 285

24.1.1使用Server-Sent Event入门 285

24.1.2服务器要求 286

24.1.3使用EventSource对象 287

24.1.4在Web Workers中使用EventSource对象 288

24.2套接字连接 290

24.2.1使用Web Socket入门 290

24.2.2关于Web Socket通信协议 292

24.2.3使用WebSocket对象 293

第IV篇DOM篇 296

第25章HTML5DOM新标准——处理文档元信息和管理交互功能 296

25.1了解DOM 297

25.1.1 DOM基于节点树的表现形式 297

25.1.2什么是HTML DOM 299

25.1.3 HTML DOM和核心DOM的区别与联系 299

25.1.4什么是接口 299

25.2 document对象 300

25.2.1处理文档元信息 301

25.2.2实用功能——处理CooKie 302

25.2.3检查文档状态 304

25.2.4开启和关闭文档 305

25.2.5易犯的错误——区分两个open方法 306

25.2.6向网页中写入内容 307

25.2.7清除网页中的内容 307

25.2.8实用功能——弹出通知窗口 307

25.2.9使整个文档都可编辑 308

25.2.10焦点管理 308

25.3编辑API 309

25.3.1命令 309

25.3.2创建网页富文本编辑器 312

第26章 使用CoreDOM方法处理HTML DOM树 315

26.1一切皆是节点——学习DOM的首要认识 316

26.1.1 JavaScript DOM API的节点类型 316

26.1.2节点的层次关系 316

26.2处理DOM文档 318

26.3使用DOM API处理HTML文档 318

26.3.1基本的节点处理 321

26.3.2节点名、节点值和属性 323

26.3.3删除HTML文档中的元素节点、属性和内容 324

26.3.4使用replaceChild()方法替换节点 326

26.4主要接口的使用 327

26.4.1 Document接口 328

26.4.2 Attr接口 329

26.4.3 CDATASection接口 330

26.4.4 CharacterData接口 330

26.4.5 Comment接口 331

26.4.6 DocumentFragment接口 331

26.4.7 DocumentType接口 331

26.4.8 DOMException接口 332

26.4.9 DOMImplementation接口 333

26.4.10 Element接口 334

26.4.11 Entity接口 338

26.4.12 Entity Reference接口 339

26.4.13 Notation接口 339

26.4.14 ProcessingInstruction接口 339

26.4.15 Text接口 340

26.4.16 NodeList接口 342

26.4.17 NamedNodeMap接口 342

第27章 使用HTML5DOM扩展CoreDOM方法 343

27.1使用HTML5DOM访问元素 344

27.1.1遍历节点树 344

27.1.2 getElementsByTagName()方法 346

27.1.3 getElementsByName()方法和getter属性 347

27.1.4 getElementById()方法 348

27.1.5 getElementsByClassName()方法 349

27.1.6关于HTMLElement接口 350

27.1.7 innerHTML属性、outerHTML属性和insertAdjacentHTML()方法 351

27.2修改HTML文档 351

27.3根据CSS选择符访问元素 351

27.4表单处理 353

27.4.1处理输入控件 353

27.4.2获取上载文件 354

27.4.3使用HTML5DOM API验证控件 355

27.5 HTML5DOM通用接口的使用 357

27.5.1 HTMLCollection接口 358

27.5.2 HTMLAllCollection接口 358

27.5.3 HTMLFormControls Collection接口 359

27.5.4 HTMLOptionsCollection接口 360

27.5.5 HTMLPropertiesCollection接口 360

27.5.6 DOMTokenList接口 361

27.5.7 DOMSettableTokenList接口 361

27.5.8 DOMStringMap接口 362

27.5.9 DOMException接口 362

27.5.10 RadioNodeList接口 363

第28章 使用DHTML和样式DOM处理CSS样式表 364

28.1在HTML文档中应用CSS 365

28.1.1嵌入式 365

28.1.2外部引用式 365

28.1.3内联式 366

28.2了解规则块、规则和样式 366

28.2.1规则块 366

28.2.2规则和样式 366

28.2.3@规则 367

28.3处理CSS 367

28.3.1使用style属性处理内联CSS 367

28.3.2处理style和link元素定义的样式表 369

28.3.3处理导入的样式表 370

28.3.4添加指令和规则 371

28.3.5样式表相关对象 371

28.4 DOM样式表 373

28.4.1 StyleSheet接口 373

28.4.2 StyleSheetList接口 374

28.4.3 MediaList接口 374

28.4.4 LinkStyle接口 375

28.4.5 DocumentStyle接口 375

28.5 DOM CSS规范 375

28.5.1 CSSStyleSheet接口 375

28.5.2 CSSRuIeList接口 376

28.5.3 CSSRule接口 376

28.5.4 CSSImportRule接口 377

28.5.5 CSSStyleRule接口 377

28.5.6 CSSStyleDeclaration接口 377

28.6兼容性指南 378

28.6.1获取样式规则 378

28.6.2获取导入的样式规则 378

28.6.3新增@import规则 380

28.6.4新增@page规则 380

28.6.5新增样式规则 380

28.6.6删除样式规则 381

第29章 事件DOM 382

29.1基本事件处理 383

29.1.1事件处理的三要素 383

29.1.2事件处理的实现 383

29.1.3事件处理的总结 387

29.1.4处理事件 387

29.2事件流 388

29.2.1捕获阶段(capturing phase) 390

29.2.2目标阶段(targeting phase ) 390

29.2.3冒泡阶段(bubbling phase) 390

29.2.4可用的基本交互事件 392

29.3事件对象 394

29.4响应键盘事件 396

29.4.1获取按键 396

29.4.2响应组合键事件 397

第30章DHTML范例 398

30.1滚动播出效果(marquee) 399

30.1.1竖直滚动的文本行 399

30.1.2竖直滚动的图片 402

30.1.3水平滚动的图片 403

30.2常用的广告效果 405

30.2.1广告的随机滚动出现 405

30.2.2对联广告 407

30.3导航菜单和选项卡面板 408

30.3.1二级分层式导航菜单 409

30.3.2弹出菜单式导航 414

30.3.3选项卡面板 416

30.4处理表单 418

30.4.1表单复选框全选 418

30.4.2表单的验证 420

第V篇 AJAX篇 426

第31章XMLHttpRequest和AJAX解决方案 426

31.1 AJAX的核心 427

31.2 AJAX的使用 427

31.2.1一个标准的AJAX应用所应具备的步骤 428

31.2.2 XMLHttpRequest的方法和属性 429

31.2.3一个标准的同步调用所应具备的步骤 432

31.2.4编码混乱问题的解决 432

31.2.5跨浏览器兼容 433

31.2.6 AJAX的特点 435

31.2.7解决请求被浏览器缓存问题 435

31.3处理返回值中的XVL 435

31.3.1处理解析错误 436

31.3.2 DOMParser 437

31.3.3 XMLSerializer 438

31.3.4 DOMImplementation 438

31.4跨域请求 439

31.4.1使用代理实现跨域请求 440

31.4.2使用XDomainRequest 443

31.4.3 XDomainRequest跨域访问控制 444

第32章AJAX框架——Spry和 JQuery 446

32.1当前比较流行的AJAX框架 447

32.2 Spry使用入门 447

32.2.1第一个Spry范例 448

32.2.2数据集的动态绑定 450

32.2.3 Spry框架的组成部分 451

32.3 jQuery使用入门 452

32.3.1第一个jQuery范例 452

32.3.2基本语法 453

第33章 网页、网站和网络应用程序 455

33.1安装和设置网络应用程序的运行环境 456

33.1.1安装IIS 456

33.1.2通过服务器请求网页 456

33.2 Web服务器根目录和虚拟目录 457

33.2.1 Web服务器根目录 457

33.2.2虚拟目录 458

33.2.3启用默认文件 461

33.3安装ASP.NET应用程序服务器 462

第34章 网页的请求和响应 464

34.1了解请求和响应的基本过程 465

34.1.1请求和响应的基本过程 465

34.1.2了解URI、 URL和URN 466

34.2 HTTP协议基础 467

34.2.1了解HTTP消息的内容 467

34.2.2了解HTTP请求的内容 468

34.2.3了解HTTP响应的内容 469

34.2.4 了解HTTP消息报头的内容 470

第Ⅵ篇 安全性、执行效率、部署与实战篇 474

第35章JavaScript安全和同源策略 474

35.1跨站脚本攻击(XSS ) 475

35.1.1如何防范跨站脚本攻击 475

35.1.2使用ASP.NET的请求验证防范XSS 476

35.2相同Origin策略的限制——同源策略 477

35.2.1了解Origin 477

35.2.2放松相同起点限制 477

第36章JavaScript部署和高性能JavaScript 479

36.1文档瘦身 480

36.2控制内存 480

36.3优化代码的一般常识 481

36.4页面重构——DOM Reflow和Repaint 483

36.4.1关于DOM Reflow和 Repaint 483

36.4.2优化DOM Reflow 483

36.4.3优化Repaint 484

36.5使用Web Workers优化JavaScript执行——多线程 484

36.5.1检查浏览器支持 484

36.5.2求素数的复杂运算 485

36.5.3使用Web Workers入门 486

36.6 Web Workers规范API 487

36.6.1 Worker及其类型 487

36.6.2 Worker中可以使用的API 488

36.6.3创建Worker 490

36.6.4处理运行时错误 491

36.7创建和使用专职Worker 491

36.7.1终止Worker 491

36.7.2消息的互传 491

36.8创建和使用共享Worker 492

36.8.1消息的互传 493

36.8.2连接同一个共享Worker 494

第37章 处理程序异常——建立可靠的应用程序 496

37.1错误和异常情况 497

37.2异常情况处理 498

37.2.1 使用 try… catch …finally语句 498

37.2.2使用throw语句 499

37.2.3使用异常捕捉 500

37.3使用Error处理异常错误信息 501

37.4条件catch语句 502

第38章JavaScript调试技术 504

38.1了解开发人员工具 505

38.2开发人员工具的组成和使用 507

38.2.1调试工具栏 507

38.2.2激活JavaScript调试 507

38.2.3主要内容窗口 508

38.2.4使用断点 508

38.2.5使用条件断点 509

38.2.6控制执行 509

38.2.7“局部变量”窗口 510

38.2.8“监视”窗口 511

38.2.9“调用堆栈”窗口 511

38.3使用脚本调试工具范例实战 512

38.3.1定义一个JavaScript网页 512

38.3.2调试实战 513

38.4“控制台”窗口 517

38.4.1使用“控制台”窗口 517

38.4.2对警报和错误消息进行日志记录 518

第Ⅶ篇JavaScript和ActiveXObiect篇 523

第39章 使用FSO访问文件系统 523

39.1使用FileSystemObject类 524

39.1.1类和集合 524

39.1.2检查磁盘、文件和文件夹是否存在 524

39.1.3访问磁盘、文件和文件夹 525

39.1.4关于IE专用的Enumerator 530

39.2处理文件夹 531

39.3处理文件 532

39.3.1创建文件 533

39.3.2向文件中添加数据 534

39.3.3读取文件内容 535

39.3.4 TextStream类成员概要 536

39.3.5移动、复制和删除文件 536

第40章 使用ADO访问数据库 538

40.1安装和使用Access数据库 539

40.1.1安装Access数据库软件 539

40.1.2使用Access创建数据库 540

40.2理解数据库连接和配置数据源 542

40.2.1理解数据库连接 542

40.2.2理解数据库连接驱动 543

40.2.3通过ODBC连接数据库 543

40.3基本数据库查询操作 546

40.3.1查询和显示数据库记录 546

40.3.2遍历列出数据库内容 547

40.4修改数据 548

40.4.1插入数据记录 548

40.4.2更新数据记录 549

40.4.3删除数据记录 550

40.5操作数据库结构 550

40.6在JavaScript程序中应用ADO的基本步骤 551

40.6.1创建连接 551

40.6.2创建命令 553

40.6.3执行命令 553

40.6.4处理结果 554

40.6.5关闭连接 554

40.7 SQL语法入门 554

40.7.1 SQL语法的基础知识 555

40.7.2定义记录集的列 556

40.7.3限制记录集中的记录 557

40.7.4对记录集中的记录进行排序 558

40.7.5联接表 558

第41章 使用MSXML处理XML 563

41.1在JavaScript应用程序中处理XML文档 564

41.1.1了解XML文档对象 564

41.1.2 DOM基于节点的浏览 565

41.1.3了解MSXML DOM组件 566

41.1.4使用DOMDocument 568

41.2创建和保存XML文档对象 570

41.2.1解析字符串为DOM 570

41.2.2解析XML文件为 XMLDOM 571

41.2.3使用版本号创建 XMLDOM 571

41.2.4保存和写出一个XML文档对象 571

41.3使用XML对象处理数据内容 572

41.3.1遍历节点树 572

41.3.2使用getElementsByTagName()方法 573

41.3.3使用XPath从XML文档中提取数据 573

41.3.4修改XML文档 575

41.4使用SAX处理XML文档 579

41.4.1什么是SAX 579

41.4.2 SAX的工作原理 580

41.4.3 MSXML SAX的使用 581

第42章 使用OWC创建统计图表 582

42.1创建简单统计图表 583

42.1.1创建简单柱状图 583

42.1.2创建立体柱状图 584

42.1.3使用样式表创建柱状图 586

42.2使用Office Web组件(OWC)创建统计图表 587

42.2.1安装OWC 587

42.2.2使用OWC 588

42.2.3 OWC组件的工作原理 589

42.2.4创建饼图 591

42.2.5增加数据系列 593

42.2.6使用OWC配合数据库查询 594

第43章 使用CDO发送和接收电子邮件 595

43.1安装和使用SMTP服务 596

43.1.1安装SMTP服务 596

43.1.2 配置SMTP服务 597

43.1.3配置Outlook使用本地SMTP服务发送邮件 599

43.1.4区分POP3和SMTP服务 600

43.2创建发送邮件的JavaScript 应用程序 601

43.2.1了解CDO 601

43.2.2创建简单的邮件发送程序 601

43.2.3使用远程SMTP服务 602

43.2.4了解CDO组件成员 603

43.2.5 SMTP服务和CDO组件的工作原理 605

43.3创建增强的邮件发送程序 606

43.3.1发送带附件的电子邮件 606

43.3.2发送多媒体邮件 607

43.3.3群发邮件——抄送和密送 608

43.4使用HTTP方式收信 609

43.4.1分拣邮件 609

43.4.2管理本地SMPT服务接收邮件的基本原理 612

43.5如何解决错误消息 612

附录A保留的关键字 615

附录B键盘键和键控代码值对照表 616

附录C W3C的XMLHttpRequest接口规范 618

附录D input元素type属性值与HTMLInputElementAPI匹配索引 619

附录E HTML5元素和HTML5DOM接口的对应关系 620

附录F HTML4和HTML5事件属性对照表 623

附录G参考资料来源 627

精品推荐