JavaScript网页编程从入门到精通 微课精编版epub下载

JavaScript网页编程从入门到精通 微课精编版 作者:前端科技JavaScript网页编程从入门到精通 微课精编版 出版社:清华大学出版社JavaScript网页编程从入门到精通 微课精编版 内容简介《JavaScript网页编程从入门到精通(微课精编版)》由浅入深、通俗易懂地讲解了网页制作和动...

JavaScript网页编程从入门到精通 微课精编版 作者:前端科技

JavaScript网页编程从入门到精通 微课精编版 出版社:清华大学出版社

JavaScript网页编程从入门到精通 微课精编版 内容简介

《JavaScript网页编程从入门到精通(微课精编版)》由浅入深、通俗易懂地讲解了网页制作和动态网站建设的相关技术及实际应用。全书共19章,包括JavaScript基础、JavaScript基本语法、JavaScript程序结构设计、使用数组、使用字符串、使用正则表达式、使用函数、函数式编程、使用对象、面向对象编程、BOM操作、DOM操作、事件操作、CSS操作、JavaScript通信、JavaScript数据存储、JavaScript图形设计、JavaScript文件操作等内容。本书在编写过程中,注意理论与实践相结合,通过大量的实例配合讲解各知识要点。

JavaScript网页编程从入门到精通 微课精编版 目录

第1 章 JavaScript 基础 1

视频讲解:16 分钟

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 分钟

2.1 编写第一行代码 17

2.2 变量 18 [1]

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.5Null和Undefined26

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.3void运算符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

视频讲解:1小时30分钟

3.1语句61

3.1.1表达式语句61

3.1.2复合语句61

3.1.3声明语句62

3.1.4空语句62

3.2选择结构63

3.2.1if语句63

3.2.2设计多选择结构64

3.2.3switch语句67

3.2.4default从句69

3.2.5优化选择结构70

3.3循环结构73

3.3.1while语句73

3.3.2do-while语句74

3.3.3for语句75

3.3.4for-in语句76

3.3.5优化循环结构79

3.4跳转结构81

3.4.1标签语句81

3.4.2break语句81

3.4.3continue语句83

3.5异常处理结构85

3.5.1throw语句86

3.5.2try-catch-finally语句86

3.6案例实战88

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

3.6.2优化选择运算性能90

3.6.3优化循环运算性能91

3.6.4设计杨辉三角93 [2]

3.6.5编程题95

第4章使用数组97

视频讲解:1小时43分钟

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使用Array104

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

视频讲解:1小时19分钟

5.1字符串基础126

5.1.1定义字符串126

5.1.2字符串与数组128

5.1.3字符串长度129

5.1.4字符集130

5.1.5Base64转码131

5.2使用String132

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.3Unicode编码和解码144

5.3.4字符串智能替换146

5.3.5过滤敏感词148

5.3.6高级加密解密148

第6章使用正则表达式151

视频讲解:1小时20分钟

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使用RegExp165

6.3.1RegExp对象属性165

6.3.2test()166

6.3.3exec()167

6.3.4RegExp静态属性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

视频讲解:2小时5分钟

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使用arguments188

7.2.1认识arguments对象188

7.2.2使用callee190

7.2.3应用arguments190

7.3使用Function192

7.3.1name属性192

7.3.2length属性192

7.3.3toString()193

7.3.4call()和apply()193

7.3.5bind()197

7.4案例实战199

7.4.1函数调用模式199

7.4.2使用闭包201

7.4.3使用this202

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.5PointFree风格218

8.2函数式基本运算219

8.2.1函数合成219

8.2.2compose实现221

8.2.3函数柯里化222

8.2.4curry实现224

8.2.5curry变体225

8.3函子228

8.3.1认识函子228

8.3.2定义容器229

8.3.3定义函子230

8.3.4Either函子232

8.3.5Applicative函子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

视频讲解:32分钟

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.1Object函数268

9.4.2Object构造函数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.4Boolean对象269

9.6使用属性描述对象269

9.6.1认识属性描述对象269

9.6.2Object.getOwnPropertyDescriptor()270

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

9.6.4元属性270

9.6.5Object.getOwnPropertyNames()270

9.6.6Object.prototype.propertyIsEnumerable()270

9.6.7存取器270

9.6.8对象的拷贝270

9.6.9控制对象状态270

9.7使用Math对象270

9.7.1Math属性271

9.7.2Math方法271

9.8使用Date对象271

9.8.1创建Date对象271

9.8.2日期运算271

9.8.3Date静态方法271

9.8.4Date实例方法271

9.9使用JSON对象271

9.9.1JSON.stringify()272

9.9.2JSON.parse()272

9.9.3比较JSON与XML272

9.9.4优化JSON数据272

9.10使用console对象272

9.10.1浏览器实现272

9.10.2console对象的方法272

9.10.3命令行API272

9.10.4debugger语句272

第10章面向对象编程273

视频讲解:33分钟

10.1面向对象基础274

10.1.1对象274

10.1.2构造函数274

10.1.3使用new运算符275

10.1.4new运行原理275

10.1.5使用new.target276

10.2使用this277

10.2.1this调用对象277

10.2.2this应用场景277

10.2.3注意事项277

10.2.4绑定this277

10.3使用prototype277

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.7Object.getPrototypeOf()286

10.3.8Object.setPrototypeOf()286

10.3.9Object.create()286

10.3.10Object.prototype.isPrototypeOf()286

10.3.11Object.prototype.__proto__287

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

10.4继承287

10.4.1Object.getOwnPropertyNames()287

10.4.2Object.prototype.hasOwnProperty()287

10.4.3in运算符和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

视频讲解:1小时55分钟

11.1window对象297

11.1.1window对象属性297

11.1.2window对象方法298

11.1.3window对象事件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.2navigator对象303

11.2.1navigator对象属性303

11.2.2浏览器检测方法305

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

11.2.4检测客户操作系统305

11.2.5检测插件305

11.3location对象306

11.4history对象307

11.4.1实现无刷新浏览308

11.4.2设计导航页面311

11.4.3设计无刷新网站312

11.4.4设计无刷新灯箱广告312

11.4.5设计可后退画板313

11.5screen对象313

11.6document对象314

11.6.1document对象属性315

11.6.2document对象方法316

11.7案例实战317

11.7.1使用远程脚本317

11.7.2设计远程交互319

11.7.3使用浮动框架322

11.7.4封装用户代理检测324

第12章DOM操作325

视频讲解:1小时47分钟

12.1DOM版本概述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使用HTML5Document333

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.8CSS选择器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

视频讲解:46分钟

13.1事件基础354

13.1.1JavaScript事件发展历史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.9event对象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.1click和dblclick375

13.3.2mouseup、mousedown和mousemove375

13.3.3mouseover和mouseenter375

13.3.4mouseout和mouseleave375

13.3.5contextmenu375

13.4MouseEvent对象375

13.4.1altKey、ctrlKey、metaKey和shiftKey375

13.4.2button和buttons376

13.4.3clientX、clientY、movementX、movementY、screenX和screenY376

13.4.4relatedTarget376

13.4.5小结376

13.5wheel事件376

13.6键盘事件376

13.6.1altKey、ctrlKey、metaKey和shiftKey376

13.6.2key和charCode376

13.6.3小结376

13.7进度事件377

13.8拖曳事件377

13.8.1事件种类377

13.8.2DataTransfer对象概述377

13.8.3DataTransfer对象的属性377

13.8.4DataTransfer对象的方法377

13.9触摸事件377

13.9.1Touch对象377

13.9.2TouchList对象378

13.9.3TouchEvent对象378

13.9.4触摸事件的种类378

13.10表单事件378

13.10.1input378

13.10.2select378

13.10.3change378

13.10.4submit378

13.10.5reset378

13.11文档事件378

13.11.1beforeunload、unload、load、error、pageshow和pagehide378

13.11.2DOMContentLoaded和readystatechange379

13.11.3scroll379

13.11.4resize379

13.11.5hashchange和popstate379

13.11.6cut、copy和paste379

13.11.7focus、blur、focusin和focusout379

第14章CSS操作380

视频讲解:41分钟

14.1CSS脚本基础381

14.1.1访问行内样式381

14.1.2使用style382

14.1.3使用styleSheets385

14.1.4使用selectorText388

14.1.5修改样式389

14.1.6添加样式390

14.1.7访问渲染样式391

14.1.8访问媒体查询394

14.1.9CSS事件395

14.2CSS尺寸397

14.2.1访问CSS宽度和高度397

14.2.2把值转换为整数397

14.2.3使用offsetWidth和offsetHeight397

14.2.4元素尺寸397

14.2.5视图尺寸398

14.2.6窗口尺寸398

14.3CSS位置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.4CSS显示399

14.4.1设置显隐效果399

14.4.2设置渐隐、渐显效果399

14.5CSS动画399

14.5.1使用定时器399

14.5.2滑动399

14.5.3渐显399

14.5.4使用requestAnimationFrame399

第15章JavaScript通信400

视频讲解:1小时21分钟

15.1XMLHttpRequest1.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.2XMLHttpRequest2.0基础411

15.2.1请求时限412

15.2.2FormData数据对象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.1postMessage基础416

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

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

15.4.4案例:设计通道通信418

15.5WebSockets通信418

15.5.1WebSocket基础418

15.5.2使用WebSocketsAPI420

15.5.3在PHP中建立socket423

15.5.4WebSocketsAPI开发框架424

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

15.5.6案例:发送JSON对象425

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

15.5.8案例:推送信息426

第16章JavaScript数据存储427

视频讲解:1小时40分钟

16.1HTTPCookie428

16.1.1写入cookie信息428

16.1.2读取cookie信息430

16.1.3修改和删除cookie信息431

16.1.4附加cookie信息431

16.1.5Http-OnlyCookie432

16.1.6封装cookie操作433

16.1.7案例实战433

16.2WebStorage434

16.2.1使用WebStorage434

16.2.2案例:设计登录页436

16.2.3案例:流量统计436

16.3WebSQLDatabase437

16.3.1使用WebSQLDatabase437

16.3.2案例:设计登录页442

16.3.3案例:设计留言板442

16.4indexedDB442

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

视频讲解:2小时15分钟

17.1使用canvas453

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.9Path2D对象485

17.9.1Canvas2DAPI新功能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

视频讲解:1小时24分钟

18.1FileList489

18.2Blob490

18.2.1访问Blob490

18.2.2创建Blob491

18.2.3截取Blob493

18.2.4保存Blob494

18.3FileReader495

18.3.1读取文件495

18.3.2事件监测497

18.4ArrayBuffer和ArrayBufferView498

18.4.1使用ArrayBuffer499

18.4.2使用ArrayBufferView499

18.4.3使用DataView500

18.5FileSystemAPI503

18.5.1认识FileSystemAPI503

18.5.2访问FileSystem503

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:URL513

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

第19章案例实战514

19.1设计折叠面板515

19.2设计计算器515

19.3设计日历515

19.4设计验证插件515

19.5设计俄罗斯方块515

附录517

附录AECMAScript6517

附录B使用SVG517

附录CCORS通信517

附录D同源策略518

附录EMutationObserverAPI518

附录FJavaScript编程风格518

本文来自铁石心肠投稿,不代表电子书资源网立场,如若转载,请联系原作者获取。

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 02-14
下一篇 02-14

相关推荐

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信