书籍 JavaScript网页编程从入门到精通的封面

JavaScript网页编程从入门到精通PDF电子书下载

前端科技编著

购买点数

16

出版社

北京:清华大学出版社

出版时间

2019

ISBN

标注页数

518 页

PDF页数

540 页

图书目录

第1章 JavaScript基础 1

1.1 JavaScript概述 2

1.1.1 什么是JavaScript 2

1.1.2 为什么学习JavaScript 2

1.2 JavaScript历史和版本 5

1.2.1 JavaScript早期历史 5

1.2.2 ECMAScript与JavaScript的关系 5

1.2.3 ECMAScript历史 6

1.2.4 ECMAScript与浏览器的兼容 6

1.3 JavaScript构成 7

1.3.1 JavaScript核心 7

1.3.2 文档对象模型 7

1.3.3 浏览器对象模型 9

1.4 初次使用JavaScript 9

1.4.1 编写脚本 9

1.4.2 脚本位置 12

1.4.3 设置延迟执行 13

1.4.4 设置异步响应 13

1.4.5 在XHTML中使用JavaScript脚本 13

1.4.6 兼容不支持JavaScript的浏览器 14

1.4.7 比较嵌入代码与链接脚本 14

1.4.8 使用〈noscript〉标签 14

1.4.9 脚本的动态加载 14

1.5 JavaScript解析基础 14

1.6 浏览器与JavaScript 15

1.7 JavaScript开发工具 15

1.8 JavaScript发展趋势 15

第2章 JavaScript基本语法 16

2.1 编写第一行代码 17

2.2 变量 18

2.2.1 声明变量 18

2.2.2 赋值变量 19

2.2.3 变量的作用域 19

2.2.4 全局变量 20

2.3 数据类型 21

2.3.1 检测类型 21

2.3.2 数值 22

2.3.3 字符串 24

2.3.4 布尔值 25

2.3.5 Null和Undefined 26

2.4 运算符 27

2.5 使用算术运算符 29

2.5.1 加法运算 29

2.5.2 减法运算 30

2.5.3 乘法运算 31

2.5.4 除法运算 31

2.5.5 余数运算 31

2.5.6 取反运算 32

2.5.7 递增和递减运算 32

2.6 使用逻辑运算符 33

2.6.1 与运算 33

2.6.2 或运算符 35

2.6.3 非运算符 36

2.6.4 逻辑运算 36

2.7 使用关系运算符 38

2.7.1 大小比较 38

2.7.2 包含检测 39

2.7.3 等值检测 39

2.8 使用赋值运算符 41

2.9 使用对象操作运算符 42

2.10 使用位运算符 42

2.10.1 认识位运算 43

2.10.2 逻辑位运算 43

2.10.3 移位运算 43

2.11 使用其他运算符 43

2.11.1 条件运算符 43

2.11.2 逗号运算符 44

2.11.3 void运算符 45

2.12 表达式 46

2.13 严格模式 49

2.14 案例实战 51

2.14.1 完善类型检测接口 51

2.14.2 转换为字符串 52

2.14.3 转换为数字 54

2.14.4 转换为数字形式字符串 56

2.14.5 转换为布尔值 57

2.14.6 转换为对象 58

2.14.7 把对象转换为值 58

2.14.8 强制类型转换 59

2.15 强化练习 59

2.15.1 求值 59

2.15.2 简单编程 59

2.15.3 表达式计算 59

2.15.4 表达式编程 59

第3章 JavaScript程序结构设计 60

3.1 语句 61

3.1.1 表达式语句 61

3.1.2 复合语句 61

3.1.3 声明语句 62

3.1.4 空语句 62

3.2 选择结构 63

3.2.1 if语句 63

3.2.2 设计多选择结构 64

3.2.3 switch语句 67

3.2.4 default从句 69

3.2.5 优化选择结构 70

3.3 循环结构 73

3.3.1 while语句 73

3.3.2 do-while语句 74

3.3.3 for语句 75

3.3.4 for-in语句 76

3.3.5 优化循环结构 79

3.4 跳转结构 81

3.4.1 标签语句 81

3.4.2 break语句 81

3.4.3 continue语句 83

3.5 异常处理结构 85

3.5.1 throw语句 86

3.5.2 try-catch-finally语句 86

3.6 案例实战 88

3.6.1 把结构语句转换为表达式 88

3.6.2 优化选择运算性能 90

3.6.3 优化循环运算性能 91

3.6.4 设计杨辉三角 93

3.6.5 编程题 95

第4章 使用数组 97

4.1 数组基础 98

4.1.1 定义数组 98

4.1.2 定义多维数组 99

4.1.3 读写数组 99

4.1.4 数组长度 100

4.1.5 类数组 101

4.1.6 检测数组 101

4.1.7 遍历数组 102

4.1.8 空位数组 103

4.2 使用Array 104

4.2.1 判断数组 104

4.2.2 增删数组 104

4.2.3 合并数组 106

4.2.4 转换为字符串 107

4.2.5 截取数组 108

4.2.6 排序数组 109

4.2.7 定位元素 111

4.2.8 迭代数组 112

4.2.9 过滤数组 115

4.2.10 验证数组 115

4.2.11 汇总数组 116

4.3 案例实战 118

4.3.1 交换变量值 118

4.3.2 使用关联数组 118

4.3.3 扩展数组 120

4.3.4 初始化数组 121

4.3.5 数组去重 122

4.4 强化练习 124

4.4.1 插入排序 124

4.4.2 二分插入排序 124

4.4.3 选择排序 124

4.4.4 冒泡排序 124

4.4.5 快速排序 124

4.4.6 计数排序 124

第5章 使用字符串 125

5.1 字符串基础 126

5.1.1 定义字符串 126

5.1.2 字符串与数组 128

5.1.3 字符串长度 129

5.1.4 字符集 130

5.1.5 Base64转码 131

5.2 使用String 132

5.2.1 字符串的表示和值 132

5.2.2 连接字符串 133

5.2.3 获取指定位置字符 133

5.2.4 获取字符的位置 134

5.2.5 查找字符串 135

5.2.6 截取字符串 136

5.2.7 替换字符串 138

5.2.8 大小写转换 139

5.2.9 比较字符串 139

5.2.10 转换为数组 140

5.2.11 修剪字符串 141

5.3 案例实战 141

5.3.1 格式化字符串 141

5.3.2 字符编码和解码 142

5.3.3 Unicode编码和解码 144

5.3.4 字符串智能替换 146

5.3.5 过滤敏感词 148

5.3.6 高级加密解密 148

第6章 使用正则表达式 151

6.1 新建正则表达式 152

6.1.1 构造正则表达式 152

6.1.2 正则表达式直接量 153

6.2 匹配规则基础 154

6.2.1 字面量字符和元字符 154

6.2.2 转义字符 155

6.2.3 特殊字符 156

6.2.4 字符类 157

6.2.5 预定义模式 159

6.2.6 重复类 160

6.2.7 量词字符 160

6.2.8 贪婪模式 160

6.2.9 修饰字符 161

6.2.10 模式分组 162

6.2.11 分组引用 163

6.2.12 非引用组 164

6.2.13 声明边界 165

6.3 使用RegExp 165

6.3.1 RegExp对象属性 165

6.3.2 test() 166

6.3.3 exec() 167

6.3.4 RegExp静态属性 169

6.4 案例实战 171

6.4.1 匹配十六进制颜色值 171

6.4.2 匹配时间 172

6.4.3 匹配日期 173

6.4.4 匹配成对标签 173

6.4.5 匹配物理路径 174

6.4.6 货币数字的千位分隔符表示 175

6.4.7 验证密码 176

第7章 使用函数 178

7.1 函数基础 179

7.1.1 声明函数 179

7.1.2 定义函数表达式 180

7.1.3 构造函数 181

7.1.4 定义嵌套函数 182

7.1.5 比较函数的定义方法 182

7.1.6 函数的返回值 182

7.1.7 函数的参数 183

7.1.8 调用函数 184

7.1.9 函数作用域 186

7.1.10 函数的标识符 187

7.2 使用arguments 188

7.2.1 认识arguments对象 188

7.2.2 使用callee 190

7.2.3 应用arguments 190

7.3 使用Function 192

7.3.1 name属性 192

7.3.2 length属性 192

7.3.3 toString() 193

7.3.4 call()和apply() 193

7.3.5 bind() 197

7.4 案例实战 199

7.4.1 函数调用模式 199

7.4.2 使用闭包 201

7.4.3 使用this 202

7.4.4 函数引用和函数调用 204

7.4.5 链式调用 204

7.4.6 使用函数实现历史记录 205

7.4.7 扩展Function类型 206

7.4.8 代码的模块模式 207

7.4.9 惰性实例化 208

7.4.10 分支函数 209

7.4.11 惰性载入函数 210

7.4.12 函数节流 211

第8章 函数式编程 213

8.1 函数式编程概述 214

8.1.1 范畴论 214

8.1.2 一等公民的函数 215

8.1.3 纯函数 215

8.1.4 命令式和声明式 218

8.1.5 PointFree风格 218

8.2 函数式基本运算 219

8.2.1 函数合成 219

8.2.2 compose实现 221

8.2.3 函数柯里化 222

8.2.4 curry实现 224

8.2.5 curry变体 225

8.3 函子 228

8.3.1 认识函子 228

8.3.2 定义容器 229

8.3.3 定义函子 230

8.3.4 Either函子 232

8.3.5 Applicative函子 234

8.4 高阶函数 236

8.4.1 回调函数 236

8.4.2 返回函数 237

8.5 递归函数 239

8.5.1 定义递归函数 240

8.5.2 尾递归 241

8.5.3 栈缓存 242

8.6 案例实战 244

8.6.1 过滤运算 244

8.6.2 分组运算 247

8.6.3 映射运算 249

8.7 使用Promise对象 252

第9章 使用对象 253

9.1 创建对象 254

9.1.1 使用new运算符 254

9.1.2 对象直接量 255

9.1.3 使用create()方法 257

9.2 对象的基本操作 258

9.2.1 引用对象 258

9.2.2 复制对象 258

9.2.3 克隆对象 259

9.2.4 销毁对象 260

9.3 读写属性 260

9.3.1 定义属性 260

9.3.2 访问属性 263

9.3.3 赋值属性 265

9.3.4 删除属性 266

9.3.5 对象方法 266

9.4 使用Object对象 268

9.4.1 Object函数 268

9.4.2 Object构造函数 268

9.4.3 使用Object静态方法 268

9.4.4 使用Object实例方法 268

9.5 使用包装对象 268

9.5.1 包装对象的实例方法 269

9.5.2 原始类型的自动转换 269

9.5.3 自定义方法 269

9.5.4 Boolean对象 269

9.6 使用属性描述对象 269

9.6.1 认识属性描述对象 269

9.6.2 Object.getOwnPropertyDescriptor() 270

9.6.3 Object.defineProperty()和Object.defineProperties() 270

9.6.4 元属性 270

9.6.5 Object.getOwnPropertyNames() 270

9.6.6 Object.prototype.propertyIsEnumerable() 270

9.6.7 存取器 270

9.6.8 对象的拷贝 270

9.6.9 控制对象状态 270

9.7 使用Math对象 270

9.7.1 Math属性 271

9.7.2 Math方法 271

9.8 使用Date对象 271

9.8.1 创建Date对象 271

9.8.2 日期运算 271

9.8.3 Date静态方法 271

9.8.4 Date实例方法 271

9.9 使用JSON对象 271

9.9.1 JSON.stringify() 272

9.9.2 JSON.parse() 272

9.9.3 比较JSON与XML 272

9.9.4 优化JSON数据 272

9.10 使用console对象 272

9.10.1 浏览器实现 272

9.10.2 console对象的方法 272

9.10.3 命令行API 272

9.10.4 debugger语句 272

第10章 面向对象编程 273

10.1 面向对象基础 274

10.1.1 对象 274

10.1.2 构造函数 274

10.1.3 使用new运算符 275

10.1.4 new运行原理 275

10.1.5 使用new.target 276

10.2 使用this 277

10.2.1 this调用对象 277

10.2.2 this应用场景 277

10.2.3 注意事项 277

10.2.4 绑定this 277

10.3 使用prototype 277

10.3.1 定义原型 278

10.3.2 原型属性和本地属性 279

10.3.3 应用原型 280

10.3.4 原型链 283

10.3.5 原型继承 284

10.3.6 扩展原型方法 285

10.3.7 Object.getPrototypeOf() 286

10.3.8 Object.setPrototypeOf() 286

10.3.9 Object.create() 286

10.3.10 Object.prototype.isPrototypeOf() 286

10.3.11 Object.prototype._proto_ 287

10.3.12 获取原型对象方法的比较 287

10.4 继承 287

10.4.1 Object.getOwnPropertyNames() 287

10.4.2 Object.prototype.hasOwnProperty() 287

10.4.3 in运算符和for-in循环 287

10.4.4 对象的拷贝 288

10.5 面向对象编程模式 289

10.5.1 构造函数的继承 289

10.5.2 多重继承 290

10.5.3 模块 291

10.6 案例实战 294

10.6.1 设计工厂模式 294

10.6.2 设计类继承 294

10.6.3 设计构造原型模式 294

10.6.4 设计动态原型模式 294

10.6.5 设计实例继承 295

10.6.6 惰性实例化 295

10.6.7 安全构造对象 295

第11章 BOM操作 296

11.1 window对象 297

11.1.1 window对象属性 297

11.1.2 window对象方法 298

11.1.3 window对象事件 301

11.1.4 访问浏览器对象 302

11.1.5 全局作用域 302

11.1.6 使用人机互动方法 302

11.1.7 打开和关闭窗口 303

11.1.8 使用框架集 303

11.1.9 控制窗口位置 303

11.1.10 控制窗口大小 303

11.2 navigator对象 303

11.2.1 navigator对象属性 303

11.2.2 浏览器检测方法 305

11.2.3 检测浏览器类型和版本号 305

11.2.4 检测客户操作系统 305

11.2.5 检测插件 305

11.3 location对象 306

11.4 history对象 307

11.4.1 实现无刷新浏览 308

11.4.2 设计导航页面 311

11.4.3 设计无刷新网站 312

11.4.4 设计无刷新灯箱广告 312

11.4.5 设计可后退画板 313

11.5 screen对象 313

11.6 document对象 314

11.6.1 document对象属性 315

11.6.2 document对象方法 316

11.7 案例实战 317

11.7.1 使用远程脚本 317

11.7.2 设计远程交互 319

11.7.3 使用浮动框架 322

11.7.4 封装用户代理检测 324

第12章 DOM操作 325

12.1 DOM版本概述 326

12.2 节点 326

12.2.1 节点类型 326

12.2.2 节点名称和值 326

12.2.3 节点树 327

12.2.4 访问节点 327

12.2.5 操作节点 330

12.3 文档 331

12.3.1 访问文档节点和子节点 331

12.3.2 访问文档信息 332

12.3.3 访问文档元素 332

12.3.4 访问文档集合 333

12.3.5 使用HTML5Document 333

12.4 元素 334

12.4.1 访问元素 334

12.4.2 遍历元素 335

12.4.3 创建元素 335

12.4.4 复制节点 336

12.4.5 插入节点 336

12.4.6 删除节点 337

12.4.7 替换节点 337

12.4.8 获取焦点元素 338

12.4.9 检测包含节点 339

12.5 文本 339

12.5.1 访问文本节点 339

12.5.2 创建文本节点 340

12.5.3 操作文本节点 341

12.5.4 读取HTML字符串 341

12.5.5 插入HTML字符串 342

12.5.6 替换HTML字符串 342

12.5.7 插入文本 343

12.6 文档片段 343

12.7 属性 344

12.7.1 访问属性节点 344

12.7.2 读取属性值 345

12.7.3 设置属性值 345

12.7.4 删除属性 346

12.7.5 使用类选择器 347

12.7.6 自定义属性 348

12.8 CSS选择器 348

12.9 范围 350

12.9.1 创建范围 350

12.9.2 选择范围 350

12.9.3 设置范围 350

12.9.4 操作范围内容 350

12.9.5 插入范围内容 350

12.9.6 折叠范围 350

12.9.7 比较范围 351

12.9.8 复制和清除范围 351

12.10 案例实战 351

12.10.1 异步加载远程数据 351

12.10.2 使用script设计异步交互 351

12.10.3 使用JSONP异步通信 351

12.10.4 访问DOM集合 352

12.10.5 编辑选择文本 352

第13章 事件操作 353

13.1 事件基础 354

13.1.1 JavaScript事件发展历史 354

13.1.2 事件模型 354

13.1.3 事件传播 354

13.1.4 事件类型 355

13.1.5 绑定事件 355

13.1.6 事件监听函数 356

13.1.7 注册事件 358

13.1.8 销毁事件 360

13.1.9 event对象 362

13.1.10 事件委托 364

13.2 自定义事件 366

13.2.1 设计弹出对话框 366

13.2.2 设计遮罩层 367

13.2.3 自定义事件 369

13.2.4 设计事件触发模型 370

13.2.5 应用事件模型 371

13.3 鼠标事件 375

13.3.1 click和dblclick 375

13.3.2 mouseup、mousedown和mousemove 375

13.3.3 mouseover和mouseenter 375

13.3.4 mouseout和mouseleave 375

13.3.5 contextmenu 375

13.4 MouseEvent对象 375

13.4.1 altKey、ctrlKey、metaKey和shiftKey 375

13.4.2 button和buttons 376

13.4.3 clientX、clientY、movementX、movementY、screenX和screenY 376

13.4.4 relatedTarget 376

13.4.5 小结 376

13.5 wheel事件 376

13.6 键盘事件 376

13.6.1 altKey、ctrlKey、metaKey和shiftKey 376

13.6.2 key和charCode 376

13.6.3 小结 376

13.7 进度事件 377

13.8 拖曳事件 377

13.8.1 事件种类 377

13.8.2 DataTransfer对象概述 377

13.8.3 DataTransfer对象的属性 377

13.8.4 DataTransfer对象的方法 377

13.9 触摸事件 377

13.9.1 Touch对象 377

13.9.2 TouchList对象 378

13.9.3 TouchEvent对象 378

13.9.4 触摸事件的种类 378

13.10 表单事件 378

13.10.1 input 378

13.10.2 select 378

13.10.3 change 378

13.10.4 submit 378

13.10.5 reset 378

13.11 文档事件 378

13.11.1 beforeunload、unload、load、error、pageshow和pagehide 378

13.11.2 DOMContentLoaded和readystatechange 379

13.11.3 scroll 379

13.11.4 resize 379

13.11.5 hashchange和popstate 379

13.11.6 cut、copy和paste 379

13.11.7 focus、blur、focusin和focusout 379

第14章 CSS操作 380

14.1 CSS脚本基础 381

14.1.1 访问行内样式 381

14.1.2 使用style 382

14.1.3 使用styleSheets 385

14.1.4 使用selectorText 388

14.1.5 修改样式 389

14.1.6 添加样式 390

14.1.7 访问渲染样式 391

14.1.8 访问媒体查询 394

14.1.9 CSS事件 395

14.2 CSS尺寸 397

14.2.1 访问CSS宽度和高度 397

14.2.2 把值转换为整数 397

14.2.3 使用offsetWidth和offsetHeight 397

14.2.4 元素尺寸 397

14.2.5 视图尺寸 398

14.2.6 窗口尺寸 398

14.3 CSS位置 398

14.3.1 窗口位置 398

14.3.2 相对位置 398

14.3.3 定位位置 398

14.3.4 设置偏移位置 398

14.3.5 设置相对位置 398

14.3.6 鼠标指针绝对位置 398

14.3.7 鼠标指针相对位置 398

14.3.8 滚动条位置 398

14.3.9 设置滚动条位置 399

14.4 CSS显示 399

14.4.1 设置显隐效果 399

14.4.2 设置渐隐、渐显效果 399

14.5 CSS动画 399

14.5.1 使用定时器 399

14.5.2 滑动 399

14.5.3 渐显 399

14.5.4 使用requestAnimationFrame 399

第15章 JavaScript通信 400

15.1 XMLHttpRequest1.0基础 401

15.1.1 定义XMLHttpRequest对象 401

15.1.2 建立XMLHttpRequest连接 402

15.1.3 发送GET请求 403

15.1.4 发送POST请求 403

15.1.5 转换串行化字符串 405

15.1.6 跟踪状态 406

15.1.7 中止请求 407

15.1.8 获取XML数据 407

15.1.9 获取HTML文本 408

15.1.10 获取JavaScript脚本 409

15.1.11 获取JSON数据 409

15.1.12 获取纯文本 410

15.1.13 获取头部信息 411

15.2 XMLHttpRequest2.0基础 411

15.2.1 请求时限 412

15.2.2 FormData数据对象 412

15.2.3 上传文件 412

15.2.4 跨域访问 413

15.2.5 响应不同类型数据 413

15.2.6 接收二进制数据 413

15.2.7 监测数据传输进度 414

15.3 案例实战 414

15.3.1 接收ArrayBuffer对象 415

15.3.2 接收Blob对象 415

15.3.3 发送字符串 415

15.3.4 发送表单数据 415

15.3.5 发送二进制文件 415

15.3.6 发送Blob对象 416

15.3.7 跨域请求 416

15.3.8 设计文件上传进度条 416

15.4 跨文档消息传递 416

15.4.1 postMessage基础 416

15.4.2 案例:设计简单的跨域通话 418

15.4.3 案例:设计跨域动态对话 418

15.4.4 案例:设计通道通信 418

15.5 WebSockets通信 418

15.5.1 WebSocket基础 418

15.5.2 使用WebSocketsAPI 420

15.5.3 在PHP中建立socket 423

15.5.4 WebSocketsAPI开发框架 424

15.5.5 案例:设计简单的“呼-应”通信 425

15.5.6 案例:发送JSON对象 425

15.5.7 案例:使用Workerman框架通信 426

15.5.8 案例:推送信息 426

第16章 JavaScript数据存储 427

16.1 HTTPCookie 428

16.1.1 写入cookie信息 428

16.1.2 读取cookie信息 430

16.1.3 修改和删除cookie信息 431

16.1.4 附加cookie信息 431

16.1.5 Http-Only Cookie 432

16.1.6 封装cookie操作 433

16.1.7 案例实战 433

16.2 WebStorage 434

16.2.1 使用WebStorage 434

16.2.2 案例:设计登录页 436

16.2.3 案例:流量统计 436

16.3 WebSQLDatabase 437

16.3.1 使用WebSQLDatabase 437

16.3.2 案例:设计登录页 442

16.3.3 案例:设计留言板 442

16.4 indexedDB 442

16.4.1 建立连接 442

16.4.2 更新版本 444

16.4.3 新建仓库 446

16.4.4 新建索引 447

16.4.5 使用事务 449

16.4.6 保存数据 450

16.4.7 访问数据 451

16.4.8 访问键值 451

16.4.9 访问属性 451

16.5 案例:设计录入表单 451

第17章 JavaScript图形设计 452

17.1 使用canvas 453

17.2 绘制图形 455

17.2.1 矩形 455

17.2.2 路径 456

17.2.3 直线 457

17.2.4 圆弧 458

17.2.5 二次方曲线 460

17.2.6 三次方曲线 461

17.3 定义样式和颜色 462

17.3.1 颜色 462

17.3.2 不透明度 463

17.3.3 实线 464

17.3.4 虚线 465

17.3.5 线性渐变 465

17.3.6 径向渐变 467

17.3.7 图案 467

17.3.8 阴影 468

17.3.9 填充规则 469

17.4 图形变形 470

17.4.1 保存和恢复状态 470

17.4.2 清除画布 471

17.4.3 移动坐标 472

17.4.4 旋转坐标 473

17.4.5 缩放图形 474

17.4.6 变换图形 475

17.5 图形合成 476

17.5.1 合成 476

17.5.2 裁切 477

17.6 绘制文本 477

17.6.1 填充文字 477

17.6.2 轮廓文字 478

17.6.3 文本样式 478

17.6.4 测量宽度 479

17.7 使用图像 479

17.7.1 导入图像 479

17.7.2 缩放图像 481

17.7.3 裁切图像 482

17.7.4 平铺图像 482

17.8 像素操作 483

17.8.1 认识ImageData对象 483

17.8.2 创建图像数据 483

17.8.3 将图像数据写入画布 483

17.8.4 在画布中复制图像数据 484

17.8.5 保存图片 484

17.9 Path2D对象 485

17.9.1 Canvas2DAPI新功能 486

17.9.2 使用Path2D对象 486

17.10 案例实战 486

17.10.1 设计基本动画 486

17.10.2 颜色选择器 486

17.10.3 给图像去色 486

17.10.4 缩放图像和反锯齿处理 486

17.10.5 设计运动动画 487

17.10.6 设计地球和月球公转动画 487

第18章 JavaScript文件操作 488

18.1 FileList 489

18.2 Blob 490

18.2.1 访问Blob 490

18.2.2 创建Blob 491

18.2.3 截取Blob 493

18.2.4 保存Blob 494

18.3 FileReader 495

18.3.1 读取文件 495

18.3.2 事件监测 497

18.4 ArrayBuffer和ArrayBufferView 498

18.4.1 使用ArrayBuffer 499

18.4.2 使用ArrayBufferView 499

18.4.3 使用DataView 500

18.5 FileSystemAPI 503

18.5.1 认识FileSystem API 503

18.5.2 访问FileSystem 503

18.5.3 申请配额 505

18.5.4 新建文件 508

18.5.5 写入数据 510

18.5.6 添加数据 510

18.5.7 读取数据 510

18.5.8 复制文件 511

18.5.9 删除文件 511

18.5.10 创建目录 511

18.5.11 读取目录 512

18.5.12 删除目录 512

18.5.13 复制目录 512

18.5.14 重命名目录 512

18.5.15 使用filesystem:URL 513

18.6 案例:设计资源管理器 513

第19章 案例实战 514

19.1 设计折叠面板 515

19.2 设计计算器 515

19.3 设计日历 515

19.4 设计验证插件 515

19.5 设计俄罗斯方块 515

附录 517

附录A ECMAScript 6 517

附录B 使用SVG 517

附录C CORS通信 517

附录D 同源策略 518

附录E Mutation Observer API 518

附录F JavaScript编程风格 518

查看更多关于的内容

本类热门
在线购买PDF电子书
下载此书RAR压缩包