本书基于ES6新特性! 本书从JavaScript的基本语言特性手,提纲挈领地介绍JavaScript的主要功能和特色,包括基本结构、函数、数据结构、高阶函数、错误处理、正则表达式、模块、异步编程、浏览器文档对象模型、事件处理、绘图、HTTP表单、Node等,可以帮助你循序渐地掌握基本的编程概念、技术和思想。而且书中提供5个项目实战章节,涉及路径查找、自制编程语言、平台交互游戏、绘图工具和动态网站,可以帮助你快速上手实际的项目。此外,本书还介绍了JavaScript性能优化的方法论、思路和工具,以帮助我们发高效的程序。
售 价:¥
纸质售价:¥71.50购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
本书赞誉
译者序
前言
第一部分 语言
第1章 值、类型和运算符
1.1 值
1.2 数字
1.3 字符串
1.4 一元运算符
1.5 布尔值
1.6 空值
1.7 自动类型转换
1.8 小结
第2章 程序结构
2.1 表达式和语句
2.2 绑定
2.3 绑定名称
2.4 环境
2.5 函数
2.6 console.log函数
2.7 返回值
2.8 控制流
2.9 条件执行
2.10 while和do循环
2.11 缩进代码
2.12 for循环
2.13 跳出循环
2.14 简洁地更新绑定
2.15 使用switch调度值
2.16 首字母大写
2.17 注释
2.18 小结
2.19 习题
第3章 函数
3.1 定义一个函数
3.2 绑定和作用域
3.3 作为值的函数
3.4 声明表示法
3.5 箭头函数
3.6 调用栈
3.7 可选参数
3.8 闭包
3.9 递归
3.10 函数的增长方式
3.11 函数和副作用
3.12 小结
3.13 习题
第4章 数据结构:对象和数组
4.1 松鼠人
4.2 数据集
4.3 属性
4.4 方法
4.5 对象
4.6 可变性
4.7 松鼠人的日志
4.8 计算相关性
4.9 数组循环
4.10 最终分析
4.11 其他数组方法
4.12 字符串及其属性
4.13 剩余参数
4.14 Math对象
4.15 解构
4.16 JSON
4.17 小结
4.18 习题
第5章 高阶函数
5.1 抽象化
5.2 提取重复的内容
5.3 高阶函数
5.4 语言字符集数据集
5.5 过滤数组
5.6 用map转换
5.7 用reduce汇总
5.8 组合性
5.9 字符串和字符代码
5.10 文本识别
5.11 小结
5.12 习题
第6章 对象的秘密
6.1 封装
6.2 方法
6.3 原型
6.4 类
6.5 类表示法
6.6 覆盖派生属性
6.7 映射
6.8 多态性
6.9 符号
6.10 迭代器接口
6.11 读取器、设置器和静态
6.12 继承
6.13 instanceof运算符
6.14 小结
6.15 习题
第7章 项目:机器人
7.1 村庄Meadowfield
7.2 任务
7.3 持久化数据
7.4 模拟
7.5 邮车的路线
7.6 寻找路线
7.7 习题
第8章 缺陷和错误
8.1 语言
8.2 严格模式
8.3 类型
8.4 测试
8.5 调试
8.6 错误传播
8.7 异常
8.8 异常后清理
8.9 选择性捕获
8.10 断言
8.11 小结
8.12 习题
第9章 正则表达式
9.1 创建正则表达式
9.2 匹配测试
9.3 字符集
9.4 模式的重复部分
9.5 对子表达式分组
9.6 匹配和组
9.7 Date类
9.8 单词和字符串边界
9.9 选择模式
9.10 匹配机制
9.11 回溯
9.12 replace方法
9.13 贪心
9.14 动态创建RegExp对象
9.15 search方法
9.16 lastIndex属性
9.17 解析INI文件
9.18 国际字符
9.19 小结
9.20 习题
第10章 模块
10.1 模块作为构件
10.2 包
10.3 简易模块
10.4 将数据作为代码执行
10.5 CommonJS
10.6 ECMAScript模块
10.7 构建和捆绑
10.8 模块设计
10.9 小结
10.10 习题
第11章 异步编程
11.1 异步
11.2 乌鸦技术
11.3 回调
11.4 promise
11.5 失败
11.6 构建网络很困难
11.7 promise集合
11.8 网络泛洪
11.9 消息路由
11.10 异步函数
11.11 生成器
11.12 事件循环
11.13 异步bug
11.14 小结
11.15 习题
第12章 项目:编程语言
12.1 解析
12.2 求解器
12.3 特殊形式
12.4 环境
12.5 函数
12.6 编译
12.7 作弊
12.8 习题
第二部分 浏览器
第13章 浏览器中的JavaScript
13.1 网络和互联网
13.2 Web
13.3 HTML
13.4 HTML和JavaScript
13.5 沙盒
13.6 兼容性和浏览器大战
第14章 文档对象模型
14.1 文档结构
14.2 树
14.3 标准
14.4 通过树结构
14.5 寻找元素
14.6 更改文档
14.7 创建节点
14.8 属性
14.9 布局
14.10 样式
14.11 层叠样式
14.12 查询选择器
14.13 定位和动画
14.14 小结
14.15 习题
第15章 处理事件
15.1 事件处理程序
15.2 事件和DOM节点
15.3 事件对象
15.4 传播
15.5 默认操作
15.6 按键事件
15.7 指针事件
15.8 滚动事件
15.9 焦点事件
15.10 加载事件
15.11 事件和事件循环
15.12 计时器
15.13 限频
15.14 小结
15.15 习题
第16章 项目:平台游戏
16.1 游戏
16.2 技术
16.3 关卡
16.4 读取关卡
16.5 演员
16.6 封装是一种负担
16.7 绘图
16.8 动作和碰撞
16.9 演员的更新
16.10 跟踪按键
16.11 运行游戏
16.12 习题
第17章 在画布上绘图
17.1 SVG
17.2 画布元素
17.3 线和面
17.4 路径
17.5 曲线
17.6 绘制饼图
17.7 文本
17.8 图片
17.9 转换
17.10 存储和清除转换
17.11 回到游戏
17.12 选择图形界面
17.13 小结
17.14 习题
第18章 HTTP和表单
18.1 协议
18.2 浏览器和HTTP
18.3 fetch
18.4 HTTP沙盒
18.5 欣赏HTTP
18.6 安全性和HTTPS
18.7 表单域
18.8 焦点
18.9 禁用域
18.10 表单整体
18.11 文本域
18.12 复选框和单选按钮
18.13 选择域
18.14 文件域
18.15 在客户端存储数据
18.16 小结
18.17 习题
第19章 项目:像素绘图程序
19.1 组件
19.2 状态
19.3 DOM的建立
19.4 画布
19.5 应用程序
19.6 绘图工具
19.7 保存和加载
19.8 撤销历史记录
19.9 让我们画吧
19.10 为什么这么难
19.11 习题
第三部分 Node
第20章 Node.js
20.1 背景
20.2 node命令
20.3 模块
20.4 使用NPM安装
20.5 文件系统模块
20.6 HTTP模块
20.7 流
20.8 文件服务器
20.9 小结
20.10 习题
第21章 项目:技能分享网站
21.1 设计
21.2 长轮询
21.3 HTTP接口
21.4 服务器
21.5 客户端
21.6 习题
第22章 JavaScript性能
22.1 分阶段编译
22.2 图的布局
22.3 定义图
22.4 力导向布局
22.5 避免工作
22.6 分析器
22.7 函数内联
22.8 减少垃圾
22.9 垃圾收集
22.10 动态类型
22.11 小结
22.12 习题
附录 部分习题解答提示
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜