主编推荐语
本书从实战角度讲解了JavaScript在各个领域的应用案例。
内容简介
本书独立成册,适用于掌握JavaScript基础知识的读者,上述技术领域涵盖的章节如下:
(1)文件系统(第1~2章):主要包括对文件和文件夹的操作、获取文件和目录属性,搜索文件和目录、创建快捷操作,控制回收站、Windows注册表、设置启动项、显示系统窗口等。(2)GUI技术(第3、7章):主要包括Electron的基本用法、异形窗口、(半)透明窗口,控制状态栏等。(3)AIGC(第13章):主要包括AIGC的基本概念、注册和登录ChatGPT、使用OpenAI API等。
(4)多媒体(第8~12章):主要包括属性动画、缓动动画、数学动画、生成动画gif、播放音频、录制音频、音频分析、音频格式转换、音频编辑、获取视频信息、播放视频、截屏、拍照、录制视频、视频格式转换、视频编辑、图像处理(滤镜、缩放图像、翻转图像、混合图像等)、视频特效等。(5)办公自动化(第15~18章):包括Excel、Word、PointPower和PDF的读写操作。
(6)JS高级技术(第3、4、6章):包括WebAssembly、Node.js、PWA等。(7)加密和解密(第19章):MD5加密、SHA加密、Base64编码和解码、DES加密和解密、AES加密和解密、RSA加密和解密。(8)文件压缩和解密(第20章):压缩和解压zip和7z格式的文件。
目录
- 版权信息
- 内容简介
- 作者简介
- 前言
- 第1章 文件系统
- 1.1 Node.js入门
- 1.1.1 Node.js简介
- 1.1.2 Node.js安装
- 1.1.3 使用Node.js编程
- 1.1.4 使用Node.js开发工具
- 1.2 打开文件夹
- 1.3 获取文件和目录的属性
- 1.4 获取目录的总尺寸
- 1.5 获取系统用户列表
- 1.6 改变文件和目录的属性
- 1.7 创建文件和目录
- 1.8 删除文件和目录
- 1.9 复制文件和目录
- 1.10 重命名文件和目录
- 1.11 搜索文件和目录
- 1.12 创建快捷方式
- 1.13 回收站
- 1.13.1 将删除的文件和目录放入回收站
- 1.13.2 清空回收站中的文件
- 1.13.3 恢复回收站中的文件
- 1.14 小结
- 第2章 驾驭OS
- 2.1 Windows注册表
- 2.1.1 读取值的数据
- 2.1.2 读取所有的键
- 2.1.3 读取所有的键和值
- 2.1.4 添加键和值
- 2.1.5 删除值
- 2.1.6 删除键
- 2.2 让程序随OS一起启动
- 2.2.1 将应用程序添加进macOS登录项
- 2.2.2 将应用程序添加进Windows启动项
- 2.2.3 将应用程序添加进Linux启动项
- 2.3 获取系统信息
- 2.4 显示系统窗口
- 2.4.1 显示macOS中的系统窗口
- 2.4.2 显示Windows中的系统窗口
- 2.4.3 显示Linux中的系统窗口
- 2.5 打开文件夹
- 2.5.1 打开macOS文件夹与废纸篓
- 2.5.2 打开Windows文件夹与回收站
- 2.5.3 打开Linux文件夹与回收站
- 2.6 跨平台终端
- 2.7 小结
- 第3章 JavaScript二进制扩展:WebAssembly
- 3.1 WebAssembly简介
- 3.1.1 WebAssembly的历史
- 3.1.2 WebAssembly与JavaScript的关系
- 3.1.3 WebAssembly为什么能提高Web页面的性能
- 3.1.4 WebAssembly的应用领域
- 3.2 如何开发WebAssembly
- 3.3 AssemblyScript简介
- 3.4 使用AssemblyScript开发WebAssembly
- 3.5 有趣的WebAssembly案例
- 3.5.1 数据加密和安全
- 3.5.2 粒子系统
- 3.5.3 猜数字游戏
- 3.5.4 科学计算
- 3.6 小结
- 第4章 JavaScript(Node.js)服务器端
- 4.1 简单的Web服务器
- 4.2 文件服务器
- 4.2.1 文件下载服务器
- 4.2.2 文件上传服务器
- 4.2.3 让Web服务器支持HTTPS
- 4.3 基于Express框架的Web应用
- 4.4 基于RESTful API的科学计算服务器
- 4.5 基于WebSocket的Web版多人聊天室
- 4.6 基于TCP的点对点聊天室
- 4.7 用WebAssembly扩展Node.js
- 4.8 小结
- 第5章 JavaScript GUI解决方案:Electron
- 5.1 Electron基础
- 5.1.1 Electron简介
- 5.1.2 搭建Electron开发环境
- 5.1.3 第一个Electron应用
- 5.1.4 解析package.json文件
- 5.1.5 调试Electron应用
- 5.2 Electron基础功能
- 5.2.1 Electron组件
- 5.2.2 菜单
- 5.2.3 对话框
- 5.2.4 全局快捷键
- 5.2.5 通知
- 5.3 多窗口与通信机制
- 5.3.1 多窗口管理
- 5.3.2 主进程与渲染进程之间的通信
- 5.4 Electron应用与WebAssembly集成
- 5.5 小结
- 第6章 离线Web技术:PWA
- 6.1 PWA基础
- 6.1.1 PWA简介
- 6.1.2 离线Web技术的重要性
- 6.2 Service Worker
- 6.2.1 Service Worker的基本概念和作用
- 6.2.2 Service Worker的生命周期
- 6.2.3 注册与安装Service Worker
- 6.2.4 如何激活与更新Service Worker
- 6.3 缓存机制
- 6.4 IndexedDB基础
- 6.5 案例:离线Web应用
- 6.6 高级案例:离线提交表单
- 6.6.1 服务器程序
- 6.6.2 页面表单
- 6.6.3 提交数据到服务器或本地
- 6.6.4 本地数据库(IndexedDB)管理
- 6.6.5 管理Service Worker
- 6.7 小结
- 第7章 有趣的GUI技术
- 7.1 特殊窗口
- 7.1.1 使用Electron实现五角星窗口
- 7.1.2 使用透明png图像实现美女机器人窗口
- 7.1.3 半透明窗口
- 7.2 在屏幕上绘制曲线
- 7.3 控制状态栏
- 7.3.1 在状态栏上添加图标
- 7.3.2 显示消息框
- 7.4 小结
- 第8章 动画
- 8.1 属性动画
- 8.2 缓动动画
- 8.3 制作GIF动画
- 8.3.1 正弦波动画
- 8.3.2 使用静态图像生成动画GIF文件
- 8.3.3 自由落体和粒子爆炸动画
- 8.4 小结
- 第9章 音频
- 9.1 音乐播放器
- 9.2 录音机
- 9.3 音频分析
- 9.3.1 获取基本的音频信息
- 9.3.2 音频波形图
- 9.4 音频格式转换
- 9.5 音频编辑
- 9.5.1 音频裁剪
- 9.5.2 音频合并
- 9.5.3 音频混合
- 9.6 小结
- 第10章 图像与视频
- 10.1 获取视频信息
- 10.2 播放视频
- 10.3 截屏
- 10.3.1 截取屏幕
- 10.3.2 截取Web页面
- 10.4 拍照
- 10.5 录制带声音的视频
- 10.6 图像和视频的格式转换
- 10.7 视频编辑
- 10.7.1 视频裁剪
- 10.7.2 视频合并
- 10.7.3 提取视频中的音频
- 10.7.4 混合音频和视频
- 10.7.5 制作画中画视频
- 10.8 小结
- 第11章 图像特效
- 11.1 常用的图像滤镜
- 11.2 缩放图像与缩略图
- 11.3 生成圆形头像
- 11.4 静态图像变旋转GIF动画
- 11.5 图像翻转
- 11.6 调整图像的亮度、对比度和饱和度
- 11.7 图像色彩通道
- 11.8 在图像上添加和旋转文字
- 11.9 混合图像
- 11.10 油画
- 11.11 波浪扭曲
- 11.12 挤压扭曲
- 11.13 小结
- 第12章 视频特效
- 12.1 旋转视频
- 12.2 镜像视频
- 12.3 变速视频
- 12.4 为视频添加水印
- 12.5 缩放和拉伸视频
- 12.6 高斯模糊视频
- 12.7 视频转码与压缩
- 12.8 设置视频的亮度和对比度
- 12.9 视频的淡入淡出效果
- 12.10 向视频中添加动态图像
- 12.11 将视频转换为GIF动画
- 12.12 为视频添加字幕
- 12.13 将彩色视频变为灰度视频
- 12.14 小结
- 第13章 代码魔法:释放AIGC的神力
- 13.1 走进ChatGPT
- 13.1.1 AIGC概述
- 13.1.2 AIGC的落地案例
- 13.1.3 ChatGPT概述
- 13.1.4 ChatGPT,史上最强AI
- 13.2 注册和登录ChatGPT
- 13.3 让ChatGPT帮你写程序
- 13.4 聊天机器人
- 13.5 理解图像
- 13.6 小结
- 第14章 VSCode插件开发
- 14.1 VSCode插件基础
- 14.1.1 VSCode插件简介
- 14.1.2 VSCode插件的功能
- 14.1.3 VSCode插件的优势
- 14.2 命令插件
- 14.2.1 HelloWorld命令插件
- 14.2.2 统计JavaScript代码行数的命令插件
- 14.2.3 重新加载组件
- 14.2.4 发布插件
- 14.3 自定义编辑器插件(处理特殊文件类型)
- 14.4 语法色彩插件
- 14.4.1 创建语法色彩插件工程
- 14.4.2 配置package.json文件
- 14.4.3 配置语言的基本行为
- 14.4.4 配置语法高亮规则
- 14.4.5 配置语法高亮主题
- 14.4.6 简单语法色彩插件
- 14.4.7 支持动态高亮规则的插件
- 14.5 小结
- 第15章 读写Excel文档
- 15.1 exceljs模块简介
- 15.2 对Excel文档的基本操作
- 15.3 生成Excel表格
- 15.4 Excel表转换为SQLite表
- 15.5 绘制跨单元格斜线
- 15.6 使用Excel函数
- 15.7 插入图像
- 15.8 小结
- 第16章 读写Word文档
- 16.1 docx模块简介
- 16.2 对Word文档的基本操作
- 16.3 设置样式
- 16.4 批量插入图片
- 16.5 插入表格
- 16.6 将Word表格转换为SQLite数据表
- 16.7 插入页眉和页脚
- 16.8 统计Word文档生成云图
- 16.9 小结
- 第17章 读写PowerPoint文档
- 17.1 PptxGenJS模块简介
- 17.2 PowerPoint文档的基本操作
- 17.3 批量插入图片
- 17.4 小结
- 第18章 读写PDF文档
- 18.1 pdf-lib模块简介
- 18.2 生成简单的PDF文档
- 18.3 在PDF文档中插入图像和表格
- 18.4 小结
- 第19章 加密与解密
- 19.1 MD5摘要
- 19.2 SHA摘要
- 19.3 DES加密和解密
- 19.4 AES加密和解密
- 19.5 RSA加密和解密
- 19.6 小结
- 第20章 文件压缩与解压
- 20.1 zip格式
- 20.1.1 压缩成zip文件
- 20.1.2 解压zip文件
- 20.2 7z格式
- 20.2.1 压缩成7z格式
- 20.2.2 解压7z文件
- 20.3 小结
出版方
清华大学出版社
清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。
