《JavaScript从入门到精通 标准版》PDF下载

  • 购买积分:21 如何计算积分?
  • 作  者:未来科技编著
  • 出 版 社:北京:中国水利水电出版社
  • 出版年份:2017
  • ISBN:7517054146
  • 页数:778 页
图书介绍:

第1章JavaScript基础 1

1.1 JavaScript概述 1

1.1.1 JavaScript发展历史 1

1.1.2 ECMAScript与JavaScript的关系 1

1.1.3 ECMAScript版本变化 2

1.1.4 ECMAScript5和ECMAScript6 2

1.2 JavaScript相关概念 3

1.2.1 JavaScript核心 3

1.2.2文档对象模型 3

1.2.3浏览器对象模型 5

第2章 初次使用JavaScript 6

2.1在网页中嵌入JavaScript脚本 6

2.1.1编写脚本 6

2.1.2脚本位置 9

2.1.3设置延迟执行 10

2.1.4设置异步响应 10

2.2执行JavaScript程序 11

2.2.1执行过程 11

2.2.2预编译 12

2.2.3代码块 13

2.2.4响应事件 14

2.2.5设计动态脚本 15

第3章 代码测试和错误处理 16

3.1浏览器与JavaScript 16

3.1.1浏览器内核 16

3.1.2浏览器错误报告 16

3.2 JavaScript开发工具 20

3.2.1 JavaScript编辑器 20

3.2.2 JavaScript测试和调试 20

3.2.3使用控制台 23

3.3错误处理 24

3.3.1认识错误类型 25

3.3.2使用try-catch 26

3.3.3使用Finally 27

3.3.4使用throw 28

3.3.5抛出时机 28

3.3.6错误事件 29

第4章JavaScript基本语法 31

4.1基本词法 31

4.1.1字符编码 31

4.1.2区分大小写 32

4.1.3标识符 33

4.1.4直接量 33

4.1.5关键字和保留字 33

4.1.6分隔符 34

4.1.7注释 36

4.1.8转义序列 36

4.2使用变量 36

4.2.1声明变量 36

4.2.2赋值变量 37

4.2.3变量的作用域 38

4.2.4避免变量污染 39

4.3数据类型 40

4.3.1基本数据类型 40

4.3.2数值 40

4.3.3字符串 43

4.3.4布尔值 45

4.3.5 Null 45

4.3.6 Undefined 45

4.4严格模式 46

4.4.1启用严格模式 46

4.4.2严格模式的执行限制 48

4.5实战案例 52

4.5.1使用typeof检测类型 52

4.5.2使用constructor检测类型 53

4.5.3封装类型检测方法:toString() 54

4.5.4转换为字符串 55

4.5.5转换数字模式 57

4.5.6设置数字显示的小数位数 57

4.5.7转换为数字 58

4.5.8转换为布尔值 59

4.5.9转换为对象 60

4.5.10把对象转换为值 61

4.5.11强制转换 62

第5章 使用运算符 64

5.1运算符概述 64

5.2算术运算符 67

5.2.1加法运算 68

5.2.2减法运算 68

5.2.3乘法运算 69

5.2.4除法运算 69

5.2.5余数运算 69

5.2.6取反运算 70

5.2.7递增和递减 70

5.3逻辑运算符 71

5.3.1逻辑与运算符 71

5.3.2逻辑或运算符 72

5.3.3逻辑非运算符 73

5.3.4案例:逻辑运算训练 74

5.4关系运算符 75

5.4.1大小比较 75

5.4.2案例:包含检测 76

5.4.3案例:等值检测 77

5.5赋值运算符 78

5.6对象操作运算符 80

5.6.1 new运算符 80

5.6.2 delete运算符 81

5.6.3中括号和点号运算符 82

5.6.4小括号运算符 84

5.7其他运算符 85

5.7.1条件运算符 85

5.7.2逗号运算符 85

5.7.3 void运算符 86

5.8实战案例 87

5.8.1使用表达式 87

5.8.2连续运算 89

5.8.3把命令转换为表达式 91

5.8.4表达式中的函数 93

第6章 设计程序结构 95

6.1语句概述 95

6.1.1表达式语句 96

6.1.2复合语句 97

6.1.3声明语句 98

6.1.4空语句 98

6.2分支结构 99

6.2.1 if语句 99

6.2.2条件嵌套 100

6.2.3设计分支结构 101

6.2.4 switch语句 103

6.2.5 default从句 104

6.2.6比较if和switch结构 106

6.2.7优化分支结构 107

6.3循环结构 109

6.3.1 while语句 109

6.3.2 do/while语句 110

6.3.3 for语句 111

6.3.4 for/in语句 112

6.3.5比较while和for结构 114

6.3.6优化循环结构 116

6.4结构跳转 118

6.4.1标签语句 118

6.4.2 break语句 118

6.4.3 continue语句 121

6.5实战案例 122

6.5.1提升分支运算性能 122

6.5.2提升循环运算性能 123

6.5.3设计杨辉三角 125

第7章 使用数组 128

7.1定义数组 128

7.1.1构造数组 128

7.1.2数组直接量 129

7.2使用数组 129

7.2.1存取数组元素 129

7.2.2数组长度 130

7.2.3对象与数组 131

7.2.4定义多维数组 133

7.3使用数组对象 134

7.3.1检索数组 134

7.3.2操作元素 134

7.3.3操作子数组 136

7.3.4数组排序 138

7.3.5使用排序函数 139

7.3.6数组与字符串的转换 141

7.3.7定位 142

7.3.8迭代 143

7.3.9汇总 150

7.4实战案例 151

7.4.1快速交换 152

7.4.2数组下标 152

7.4.3扩展数组方法 153

7.4.4设计迭代器 154

7.4.5使用迭代器 156

7.4.6使用数组维度 157

第8章 使用函数 159

8.1定义函数 159

8.1.1声明函数 159

8.1.2构造函数 160

8.1.3函数直接量 160

8.1.4定义嵌套函数 161

8.1.5比较定义函数的方法 162

8.2使用函数 163

8.2.1函数返回值 164

8.2.2调用函数 164

8.2.3函数作用域 165

8.3使用参数 166

8.3.1定义参数 166

8.3.2使用arguments对象 167

8.3.3使用callee回调函数 168

8.3.4应用arguments对象 169

8.4使用函数对象 170

8.4.1获取函数形参个数 171

8.4.2自定义属性 171

8.4.3使用call()和apply() 172

8.4.4使用bind() 175

8.5使用this 177

8.5.1 this用法 177

8.5.2 this安全策略 180

8.5.3应用this 183

8.5.4函数调用模式 185

8.5.5函数的标识符 187

8.6使用闭包函数 188

8.6.1认识闭包函数 189

8.6.2使用闭包 190

8.6.3定义闭包存储器 192

8.6.4在事件处理中应用闭包 194

8.7实战案例 197

8.7.1绑定函数 197

8.7.2链式语法 198

8.7.3函数节流 199

8.7.4分支函数 200

8.7.5惰性载入函数 201

8.7.6惰性求值 202

8.7.7记忆 204

8.7.8构建模块 205

8.7.9柯里化 207

8.7.10高阶函数 208

8.7.11递归运算 210

8.7.12尾递归算法 211

第9章 使用对象 213

9.1创建对象 213

9.1.1使用构造函数创建对象 213

9.1.2使用对象直接量创建对象 214

9.1.3使用create()方法创建对象 216

9.2操作对象 217

9.2.1引用对象 217

9.2.2复制对象 217

9.2.3克隆对象 218

9.2.4销毁对象 219

9.3操作属性 219

9.3.1定义属性 219

9.3.2访问属性 221

9.3.3赋值属性 224

9.3.4删除属性 224

9.3.5使用方法 224

9.3.6配置特性 226

9.3.7检测特性 227

9.4使用方法 227

9.4.1使用toString() 227

9.4.2使用valueOf() 228

9.4.3检测私有属性 229

9.4.4检测枚举属性 230

9.4.5检测原型对象 231

9.4.6静态方法 232

9.5使用原型 234

9.5.1定义原型 234

9.5.2比较原型属性和本地属性 235

9.5.3应用原型 237

9.5.4原型域和原型域链 240

9.5.5原型继承 242

9.5.6扩展原型方法 243

9.6实战案例 244

9.6.1设计工厂模式 244

9.6.2设计类继承 245

9.6.3设计构造原型模式 248

9.6.4设计动态原型模式 248

9.6.5设计实例继承 249

9.6.6惰性实例化 250

9.6.7安全构造对象 252

第10章BOM操作 255

10.1使用window对象 255

10.1.1访问浏览器窗口 255

10.1.2全局作用域 256

10.1.3使用系统测试方法 256

10.1.4打开和关闭窗口 258

10.1.5使用框架集 260

10.1.6控制窗口位置 262

10.1.7控制窗口大小 263

10.1.8使用定时器 264

10.2使用navigator对象 267

10.2.1浏览器检测方法 267

10.2.2检测浏览器类型和版本号 268

10.2.3检测客户操作系统 269

10.2.4检测插件 270

10.3使用location对象 271

10.4使用history对象 273

10.5使用screen对象 273

10.6使用document对象 274

10.6.1访问文档对象 275

10.6.2动态生成文档内容 276

10.7实战案例 277

10.7.1使用远程脚本 277

10.7.2设计远程交互 279

10.7.3使用浮动框架 281

10.7.4封装用户代理检测 283

第11章DOM操作 289

11.1 DOM基础 289

11.2使用节点 291

11.2.1节点类型 291

11.2.2节点名称和值 293

11.2.3节点关系 294

11.2.4访问节点 295

11.2.5 操作节点 298

11.3使用文档节点 300

11.3.1访问文档子节点 300

11.3.2访问文档信息 301

11.3.3访问文档元素 301

11.3.4访问文档集合 302

11.3.5使用HTML5 Document 302

11.4使用元素节点 303

11.4.1访问元素 303

11.4.2遍历元素 304

11.4.3创建元素 306

11.4.4复制节点 307

11.4.5插入节点 308

11.4.6删除节点 310

11.4.7替换节点 312

11.4.8获取焦点元素 312

11.4.9检测包含节点 313

11.5使用文本节点 315

11.5.1访问文本节点 315

11.5.2创建文本节点 316

11.5.3操作文本节点 316

11.5.4读取HTML字符串 317

11.5.5插入HTML字符串 317

11.5.6替换HTML字符串 319

11.5.7插入文本 321

11.6使用文档片段节点 322

11.7使用属性节点 323

11.7.1访问属性节点 323

11.7.2读取属性值 325

11.7.3设置属性值 325

11.7.4删除属性 327

11.7.5使用类选择器 328

11.7.6自定义属性 328

11.8使用范围 329

11.8.1创建范围 329

11.8.2选择范围 330

11.8.3设置范围 334

11.8.4操作范围内容 336

11.8.5插入范围内容 338

11.8.6折叠范围 339

11.8.7比较范围 341

11.8.8复制和清除范围 342

11.9使用CSS选择器 342

11.10实战案例 344

11.10.1设计动态脚本 344

11.10.2使用script加载远程数据 346

11.10.3使用script实现异步交互 348

11.10.4使用JSONP 351

11.10.5设计动态表格 355

11.10.6访问DOM集合 357

11.10.7在微博分享选中文本 359

第12章 事件处理 362

12.1事件基础 362

12.1.1事件模型 362

12.1.2事件流 363

12.1.3事件类型 365

12.1.4绑定事件 367

12.1.5事件处理函数 368

12.1.6注册事件 370

12.1.7销毁事件 371

12.1.8使用event对象 373

12.1.9事件委托 375

12.2使用鼠标事件 377

12.2.1鼠标点击 377

12.2.2鼠标移动 378

12.2.3鼠标经过 380

12.2.4鼠标来源 380

12.2.5鼠标定位 381

12.2.6鼠标按键 384

12.3使用键盘事件 384

12.3.1键盘事件属性 385

12.3.2键盘响应顺序 387

12.4使用页面事件 388

12.4.1页面初始化 388

12.4.2结构初始化 390

12.4.3页面卸载 391

12.4.4窗口重置 392

12.4.5页面滚动 393

12.4.6错误处理 393

12.5使用UI事件 394

12.5.1焦点处理 394

12.5.2选择文本 395

12.5.3字段值变化监测 395

12.5.4提交表单 397

12.5.5重置表单 399

12.5.6剪贴板数据 400

12.6实战案例 401

12.6.1封装事件 401

12.6.2模拟事件 404

12.6.3设计弹出对话框 406

12.6.4设计遮罩层 407

12.6.5自定义事件 408

12.6.6设计事件触发模型 409

12.6.7应用事件模型 411

第13章 使用正则表达式与表单验证 415

13.1正则表达式操作基础 415

13.1.1定义正则表达式 415

13.1.2访问正则表达式对象 417

13.1.3执行匹配操作 418

13.1.4访问匹配信息 419

13.1.5条件检测 421

13.2正则表达式语法基础 422

13.2.1字符描述 422

13.2.2字符范围 423

13.2.3选择操作 424

13.2.4重复类量词 425

13.2.5惰性模式 426

13.2.6边界量词 427

13.2.7声明量词 428

13.2.8表达式分组 428

13.2.9子表达式引用 429

13.3实战案例 431

第14章 字符串处理与表单开发 437

14.1字符串操作基础 437

14.1.1定义字符串 437

14.1.2字符串的值和字符长度 439

14.1.3字符串连接 441

14.1.4字符串查找 441

14.1.5字符串截取 444

14.1.6字符串替换 446

14.1.7字符串大小转换 447

14.1.8字符串比较 447

14.1.9字符串与数组转换 448

14.1.10字符串格式化 449

14.1.11字符编码和解码 449

14.1.12 Unicode编码和解码 451

14.2实战案例 453

14.2.1访问表单对象 453

14.2.2访问表单元素 454

14.2.3访问字段属性 455

14.2.4访问文本框的值 457

14.2.5文本框过滤 459

14.2.6切换焦点 461

14.2.7访问选择框的值 462

14.2.8编辑选项 465

14.2.9字符串替换的高级应用 467

14.2.10字符串修剪 469

14.2.11检测特殊字符 471

14.2.12自定义加密和解密 472

14.2.13表单序列化 474

14.2.14设计文本编辑器 478

第15章CSS脚本化与网页特效 483

15.1 CSS脚本化基础 483

15.1.1访问CSS行内样式 483

15.1.2使用style对象 484

15.1.3使用styleSheets对象 489

15.1.4使用selectorText对象 492

15.1.5编辑样式 493

15.1.6添加样式 493

15.1.7访问计算样式 495

15.2元素大小 498

15.2.1访问CSS宽度和高度 498

15.2.2把值转换为整数 500

15.2.3使用offsetWidth和offset Height 501

15.2.4元素尺寸 503

15.2.5视图尺寸 506

15.2.6窗口尺寸 507

15.3位置偏移 508

15.3.1窗口位置 508

15.3.2相对位置 510

15.3.3定位位置 511

15.3.4设置偏移位置 511

15.3.5设置相对位置 512

15.3.6鼠标指针绝对位置 512

15.3.7鼠标指针相对位置 513

15.3.8滚动条位置 515

15.3.9设置滚动条位置 515

15.4显示隐藏 516

15.4.1可见性 516

15.4.2透明度 517

15.5实战案例 518

15.5.1滑动 518

15.5.2渐隐渐显 519

第16章 使用Ajax实现异步通信 520

16.1使用XML数据 520

16.1.1新建XML文档 520

16.1.2访问XML数据 521

16.1.3创建XML DOM对象 523

16.1.4加载XML数据 524

16.1.5显示XML数据 526

16.1.6案例:在网页中显示XML数据 527

16.1.7案例:异步加载XML数据 529

16.2使用 JSON数据 531

16.2.1 JSON结构 531

16.2.2案例:JSON与XML格式比较 533

16.2.3案例:JSON数据优化 535

16.2.4案例:解析JSON 537

16.2.5案例:序列化JSON 538

16.3使用Ajax 541

16.3.1 HTTP头部信息 541

16.3.2定义XMLHttpRequest对象 543

16.3.3建立XMLHttpRequest连接 545

16.3.4发送GET请求 546

16.3.5发送POST请求 547

16.3.6转换串行化字符串 548

16.3.7跟踪状态 549

16.3.8中止请求 550

16.3.9获取XML数据 550

16.3.10获取HTML文本 551

16.3.11获取JavaScript脚本 552

16.3.12获取JSON数据 552

16.3.13获取纯文本 553

16.3.14获取头部信息 553

16.4实战案例 554

16.4.1封装异步请求操作 554

16.4.2动态显示提示信息 555

16.4.3动态查询记录集 557

16.4.4记录集分页显示 560

16.4.5设计Tab面板 562

16.4.6关键字匹配 565

16.4.7使用灯标 568

第17章 本地数据存储 571

17.1使用cookie 571

17.1.1写入cookie信息 571

17.1.2读取cookie信息 573

17.1.3修改和删除cookie信息 574

17.1.4附加cookie信息 574

17.1.5封装cookie操作 576

17.1.6案例:打字游戏 577

17.2使用Web Storage 579

17.2.1基本操作 580

17.2.2案例:设计网页皮肤 581

17.2.3案例:跟踪localStorage数据 583

17.2.4案例:设计计数器 585

17.3使用Web SQL 586

17.3.1基本操作 586

17.3.2案例:创建本地数据库 588

17.3.3案例:批量存储本地数据 590

17.4实战案例 592

第18章JavaScript图形设计 599

18.1 HTML5 canvas基础 599

18.1.1在页面中插入canvas元素 599

18.1.2绘制图形的基本方法 600

18.1.3使用canvas 601

18.2绘制图形 603

18.2.1绘制直线 603

18.2.2绘制矩形 605

18.2.3 绘制圆形 606

18.2.4绘制多边形 608

18.2.5绘制曲线 609

18.2.6绘制二次方曲线 610

18.2.7绘制三次方曲线 611

18.3设置图形样式 613

18.3.1设置线型 613

18.3.2绘制线性渐变 616

18.3.3绘制径向渐变 617

18.3.4绘制图案 618

18.3.5设置不透明度 619

18.3.6设置阴影 620

18.4操作图形 621

18.4.1保存和恢复canvas状态 621

18.4.2清除绘图 622

18.4.3移动坐标 623

18.4.4旋转坐标 625

18.4.5缩放图形 626

18.4.6变换矩阵 627

18.4.7组合图形 629

18.4.8裁切路径 632

18.5绘制文字 633

18.5.1绘制填充文字 633

18.5.2设置文字属性 634

18.5.3绘制轮廓文字 634

18.5.4测量宽度 635

18.6绘制图像 636

18.6.1导入图像 636

18.6.2变换图像 638

18.6.3裁切图像 639

18.6.4图像平铺 640

18.6.5像素处理 642

18.7实战案例 643

18.7.1设计canvas动画 643

18.7.2保存绘图 646

第19章 离线应用 649

19.1 HTML5离线应用基础 649

19.1.1认识HTML5离线应用 649

19.1.2浏览器支持 650

19.1.3使用manifest文件 651

19.1.4使用离线缓存 654

19.1.5监听离线存储 657

19.2实战案例 659

19.2.1缓存首页 659

19.2.2离线编辑内容 661

19.2.3离线跟踪 666

第20章 多线程处理 671

20.1 Web Workers基础 671

20.1.1认识Web Workers 671

20.1.2浏览器支持 672

20.1.3创建Web Workers 673

20.1.4 Web Workers通信 674

20.1.5案例:使用Web Workers 675

20.2实战案例 678

20.2.1后台运算 678

20.2.2数值过滤 680

20.2.3并发处理 682

20.2.4线程通信 684

20.2.5 Fibonacci数列运算 686

第21章 文件操作 688

21.1访问文件域 688

21.2使用Blob对象 689

21.2.1在文件域中访问Blob对象 689

21.2.2创建Blob对象 691

21.2.3截取Blob对象 693

21.2.4保存Blob对象 694

21.3使用FileReader对象 696

21.3.1读取并显示文件 696

21.3.2监测读取操作 698

21.4使用缓存对象 700

21.4.1使用ArrayBuffer对象 700

21.4.2使用ArrayBufferView对象 700

21.4.3使用DataView对象 701

21.5使用FileSystem 704

21.5.1访问文件系统 704

21.5.2申请配额 706

21.5.3创建文件 710

21.5.4写入文件 712

21.5.5添加数据 713

21.5.6读取文件 715

21.5.7复制文件 716

21.5.8删除文件 717

21.5.9创建目录 718

21.5.10读取目录 720

21.5.11删除目录 722

21.5.12复制目录 723

21.5.13移动和重命名目录 724

21.5.14使用filesystem:URL 726

21.6实战案例 728

第22章 使用History 732

22.1 History API基础 732

22.1.1 History API处理方式 732

22.1.2浏览器兼容和扩展 733

22.1.3操作历史记录 733

22.2实战案例 735

22.2.1设计无刷新页面导航 735

22.2.2设计主题宣传网站 738

22.2.3设计图片画廊 741

22.2.4设计历史恢复 744

第23章 实战案例 748

23.1设计折叠面板 748

23.2设计计算器 752

23.3设计万年历 757

23.4设计俄罗斯方块 765

23.4.1设计游戏界面 766

23.4.2设计游戏模型 767

23.4.3实现游戏功能 769