清华社“视频大讲堂大系 网络开发视频大讲堂JAVASCRIPT网页编程从入门到精通(微课精编版)
温馨提示:5折以下图书主要为出版社尾货,大部分为全新(有塑封/无塑封),个别图书品相8-9成新、切口有划线标记、光盘等附件不全详细品相说明>>
- ISBN:9787302520429
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:其他
- 页数:515
- 出版时间:2018-07-01
- 条形码:9787302520429 ; 978-7-302-52042-9
本书特色
《JavaScript网页编程从入门到精通(微课精编版)》由浅入深、通俗易懂地讲解了网页制作和动态网站建设的相关技术及实际应用。全书共19章,包括JavaScript基础、JavaScript基本语法、JavaScript程序结构设计、使用数组、使用字符串、使用正则表达式、使用函数、函数式编程、使用对象、面向对象编程、BOM操作、DOM操作、事件操作、CSS操作、JavaScript通信、JavaScript数据存储、JavaScript图形设计、JavaScript文件操作等内容。本书在编写过程中,注意理论与实践相结合,通过大量的实例配合讲解各知识要点。
内容简介
《JavaScript网页编程从入门到精通(微课精编版)》由浅入深、通俗易懂地讲解了网页制作和动态网站建设的相关技术及实际应用。全书共19章,包括JavaScript基础、JavaScript基本语法、JavaScript程序结构设计、使用数组、使用字符串、使用正则表达式、使用函数、函数式编程、使用对象、面向对象编程、BOM操作、DOM操作、事件操作、CSS操作、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 使用标签 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
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
视频讲解: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.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
视频讲解: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 使用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
视频讲解:1 小时19 分钟
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
视频讲解: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 使用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
视频讲解: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 使用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
视频讲解: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.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
视频讲解:33 分钟
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
视频讲解:1 小时55 分钟
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
视频讲解:1 小时47 分钟
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
视频讲解:46 分钟
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
视频讲解:41 分钟
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
视频讲解:1 小时21 分钟
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
视频讲解:1 小时40 分钟
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
视频讲解:2 小时15 分钟
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
视频讲解:1 小时24 分钟
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
作者简介
前端科技是由一群高校一线老师、国内知名互联网公司的ITer组成的技术群组,群体信仰互联网精神,利用业余时间共享知识,传播技术和经验。以狂热的执着、屌丝的生活态度,把程序猿做到极致,不知疲倦地从事Web开发、教学培训、教材编写等业务,所编写的同类图书在很多网店上的销量名列前茅,受到了广大网友们的好评,让数十万的读者轻松跨进了Web开发的大门,为IT技术的普及和应用做出了积极贡献。
-
AI绘画+AI摄影+AI短视频从入门到精通
¥45.5¥79.8 -
企业AI之旅
¥43.5¥79.0 -
乡村振兴新技术:新时代农村短视频编辑技术基础入门
¥12.8¥32.0 -
机器学习
¥59.4¥108.0 -
基于知识蒸馏的图像去雾技术
¥61.6¥88.0 -
粒子群算法在优化选取问题中的应用研究
¥40.8¥68.0 -
Web前端开发基础
¥36.5¥57.0 -
智能算法优化及其应用
¥49.0¥68.0 -
Photoshop图像处理
¥25.5¥49.0 -
R语言医学数据分析实践
¥72.3¥99.0 -
大模型推荐系统:算法原理、代码实战与案例分析
¥66.8¥89.0 -
剪映 从入门到精通
¥25.7¥59.8 -
游戏造梦师----游戏场景开发与设计
¥68.6¥98.0 -
SAR图像处理与检测
¥35.4¥49.8 -
生成式人工智能(AIGC)应用
¥71.1¥90.0 -
人工智能
¥29.4¥42.0 -
中文版PHOTOSHOP 2024+AI修图入门教程
¥59.3¥79.0 -
WPS办公软件应用
¥25.2¥36.0 -
格拉斯曼流行学习及其在图像集分类中的应用
¥13.7¥28.0 -
轻松上手AIGC:如何更好地向CHATGPT提问
¥40.3¥62.0