实战ES2015:深入现代JavaScript应用开发
正版保障 假一赔十 可开发票
¥
49.55
6.3折
¥
79
全新
库存2件
作者小问著
出版社电子工业出版社
ISBN9787121300189
出版时间2015-02
装帧平装
开本16开
定价79元
货号8824920
上书时间2024-12-23
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
小问,本名甘超阳,不错 JavaScript 工程师,靠前 Node。js 很早的研究者之一,技术布道者、讲师,参与并维护多个很好 JavaScript 开源项目。数学系理学学士,对多方面的技术领域都有研究和自己的理解,熟悉各类 JavaScript 应用的开发和机器学习应用开发。同时也是一个业余摄影师,热爱人像摄影。
目录
第1章 ECMAScript版本发展历程1
1.1 ECMAScript的历史更替2
1.1.1 ECMA-262 / ECMA-262 Edition 22
1.1.2 ECMA-262 Edition 33
1.1.3 ECMA-262 Edition 54
1.1.4 ECMA-262 Edition 44
1.2 小结5
第2章 ES2015能为实际开发带来什么6
2.1 简单概括ES20156
2.2 语法糖7
2.3 工程优势8
2.3.1 模块化8
2.3.2 模块化与组件化结合11
2.3.3 内存安全13
2.4 小结14
第3章 ES2015新语法详解15
3.1 let、const和块级作用域16
3.1.1 块级作用域16
3.1.2 let定义变量20
3.1.3 const定义常量22
3.1.3.1 使用语法23
3.1.3.2 const与块级作用域25
3.1.4 变量的生命周期27
3.1.5 更佳体验29
3.1.5.1 let VS const29
3.1.5.2 let、const与循环语句30
3.2 箭头函数(Arrow Function)31
3.2.1 使用语法31
3.2.1.1 单一参数的单行箭头函数31
3.2.1.2 多参数的单行箭头函数31
3.2.1.3 多行箭头函数32
3.2.1.4 无参数箭头函数32
3.2.2 this穿透33
3.2.2.1 程序逻辑注意事项34
3.2.2.2 编写语法注意事项36
3.3 模板字符串(Template String)37
3.3.1 字符串元素注入37
3.3.2 多行字符串37
3.3.3 模板字符串使用语法38
3.3.3.1 支持字符串元素注入38
3.3.3.2 支持换行39
3.3.4 注意事项41
3.4 对象字面量扩展语法(Enhanced Object Literals)41
3.4.1 函数类属性的省略语法41
3.4.2 支持 __proto__ 注入42
3.4.3 可动态计算的属性名43
3.4.4 将属性名定义省略44
3.5 表达式结构(Destructuring)45
3.5.1 使用语法47
3.5.1.1 使用对象作为返回载体(带有标签的多返回值)47
3.5.1.2 使用数组作为返回载体47
3.5.2 使用场景48
3.5.2.1 Promise与模式匹配48
3.5.2.2 Swap(变量值交换)49
3.5.3 用法49
3.5.3.1 解构别名50
3.5.3.2 无法匹配的缺省值50
3.5.3.3 深层匹配50
3.5.3.4 配合其他新特性52
3.6 函数参数表达、传参53
3.6.1 默认参数值54
3.6.1.1 使用语法54
3.6.1.2 使用场景54
3.6.2 剩余参数55
3.6.2.1 使用语法56
3.6.2.2 使用场景57
3.6.2.3 注意事项57
3.6.3 解构传参58
3.7 新的数据结构59
3.7.1 Set有序集合59
3.7.1.1 使用语法60
3.7.1.2 增减元素61
3.7.1.3 检查元素61
3.7.1.4 历遍元素61
3.7.2 WeakSet62
3.7.3 Map映射类型64
3.7.3.1 使用语法64
3.7.3.2 增减键值对65
3.7.3.3 获取键值对66
3.7.3.4 检查映射对象中的键值对66
3.7.3.5 历遍映射对象中的键值对66
3.7.3.6 映射对象与Object的区别67
3.7.4 WeakMap67
3.8 类语法(Classes)68
3.8.1 使用语法69
3.8.1.1 基本定义语法69
3.8.1.2 继承语法70
3.8.1.3 Getter/Setter72
3.8.1.4 静态方法73
3.8.1.5 技巧77
3.8.2 注意事项78
3.8.3 遗憾与期望79
3.9 生成器(Generator)80
3.9.1 由来80
3.9.2 基本概念81
3.9.2.1 生成器函数(Generator Function)81
3.9.2.2 生成器(Generator)82
3.9.3 使用方法83
3.9.3.1 构建生成器函数83
3.9.3.2 启动生成器83
3.9.3.3 运行生成器内容84
3.9.4 深入理解85
3.9.4.1 运行模式85
3.9.4.2 生成器函数以及生成器对象的检测85
3.9.4.3 生成器嵌套88
3.9.4.4 生成器与协程90
3.10 Promise93
3.10.1 基本语法94
3.10.1.1 创建Promise对象94
3.10.1.2 进行异步操作94
3.10.1.3 处理Promise的状态95
3.10.2 使用方法97
3.10.2.1 Promise.all(iterable)97
3.10.2.2 Promise.race(iterable)97
3.11 代码模块化98
3.11.1 引入模块99
3.11.1.1 引入默认模块99
3.11.1.2 引入模块部分接口100
3.11.1.3 引入全部局部接口到指定命名空间101
3.11.1.4 混入引入默认接口和命名接口101
3.11.1.5 不引入接口,仅运行模块代码102
3.11.2 定义模块102
3.11.3 暴露模块103
3.11.3.1 暴露单一接口103
3.11.3.2 暴露模块默认接口104
3.11.3.3 混合使用暴露接口语句104
3.11.3.4 从其他模块暴露接口105
3.11.3.5 暴露一个模块的所有接口105
3.11.3.6 暴露一个模块的部分接口106
3.11.3.7 暴露一个模块的默认接口106
3.12 Symbol106
3.12.1 基本语法107
3.12.1.1 生成的Symbol值107
3.12.1.2 注册全局可重用 Symbol108
3.12.1.3 获取全局 Symbol的key109
3.12.2 常用Symbol值109
3.12.3 Symbol.iterator110
3.12.3.1 for-of循环语句与可迭代对象111
3.12.3.2 使用Symbol.iterator定义一个可迭代对象111
3.12.4 Symbol.hasInstance113
3.12.5 Symbol.match113
3.12.6 Symbol.unscopables114
3.12.7 Symbol.toPrimitive115
3.12.8 Symbol.toStringTag116
3.13 Proxy117
3.13.1 元编程117
3.13.2 使用语法118
3.13.3 handler.has119
3.13.4 handler.get120
3.13.5 handler.set121
3.13.6 handler.apply122
3.13.7 handler.construct122
3.13.8 创建可解除Proxy对象123
3.13.9 使用场景123
3.13.9.1 看似“不可能”的自动填充123
3.13.9.2 只读视图124
3.13.9.3 入侵式测试框架125
3.14 小结127
第4章 ES2015的前端开发实战129
4.1 Filmy的功能规划129
4.1.1 数据分级130
4.1.2 数据结构130
4.1.2.1 核心数据130
4.1.2.2 分类数据131
4.1.2.3 相册数据131
4.1.3 数据搜索132
4.1.3.1 搜索分类132
4.1.3.2 搜索相册132
4.1.4 界面原型规划133
4.1.4.1 着陆页面133
4.1.4.2 分类目录页面133
4.1.4.3 分类内容页面134
4.1.4.4 相册页面134
4.2 功能组件分割135
4.2.1 根组件分割135
4.2.2 着陆页面136
4.2.3 目录页面136
4.2.4 分类页面137
4.2.5 相册页面137
4.3 技术选型139
4.3.1 整体架构139
4.3.2 数据层139
4.3.3 逻辑层及UI层140
4.3.3.1 AngularJS141
4.3.3.2 React.js141
4.3.3.3 Vue.js142
4.3.4 程序架构143
4.3.4.1 路由组件143
4.3.4.2 数据组件144
4.3.4.3 视图组件145
4.4 数据层开发146
4.4.1 安装依赖147
4.4.2 配置七牛JavaScript SDK147
4.4.3 核心配置数据150
4.4.3.1 获取核心配置数据150
4.4.3.2 更新配置数据151
4.4.4 分类数据154
4.4.4.1 数据结构155
4.4.4.2 数据索引157
4.4.4.3 更新分类数据159
4.4.5 相册数据159
4.4.5.1 数据加载160
4.4.5.2 数据更新161
4.4.5.3 数据检索161
4.5 入口文件与路由组件开发165
4.5.1 路由基础组件166
4.5.2 入口文件166
4.5.2.1 简单的字符串处理167
4.5.2.2 多国语言处理168
4.6 着陆页面开发170
4.6.1 路由组件开发171
4.6.2 着陆页视图174
4.6.2.1 引入数据174
4.6.2.2 绑定视图174
4.6.3 分类目录视图177
4.6.3.1 分类元素视图组件177
4.6.3.2 渲染分类目录178
4.6.4 路由组件、视图组件与数据组件的联系180
4.6.4.1 在逻辑控制器中进行数据操作180
4.6.4.2 在视图中进行数据操作181
4.6.4.3 组织方式的区别与项目应用182
4.7 分类页面开发182
4.7.1 路由组件开发183
4.7.2 分类元素视图组件185
4.7.3 相册列表视图组件186
4.7.4 相册页面开发188
4.7.4.1 相册页面的路由组件188
4.7.4.2 相册信息视图组件189
4.7.4.3 图片列表视图组件189
4.8 管理工具开发190
4.9 初始化Filmy实例191
4.9.1 基本元素192
4.9.2 基本逻辑194
4.9.2.1 获取七牛云的上传凭证195
4.9.2.2 检查并处理管理员对背景图片的填写方式196
4.9.2.3 将核心数据部署到七牛云上197
4.10 管理工具的总体组织197
4.10.1 管理页面的总体架构198
4.10.2 侧边栏198
4.10.3 路由配置200
4.11 相册发布页面202
4.11.1 基本逻辑202
4.11.1.1 绑定数据202
4.11.1.2 绑定元素以接收文件上传203
4.11.2 上传数据204
4.11.2.1 图片上传逻辑204
4.11.2.2 数据提交205
4.12 打包发布206
4.12.1 准备工作206
4.12.2 配置 webpack207
4.12.2.1 安装依赖207
4.12.2.2 编写配置文件207
4.12.3 发布到云端209
4.13 小结210
第5章 ES2015的Node.js开发实战211
5.1 Duel Living的功能规划211
5.1.1 基本产品组织211
5.1.2 数据结构213
5.1.2.1 赛事(Duel)213
5.1.2.2 消息(Message)214
5.1.2.3 参赛方(Player)和主持人(Host)216
5.1.3 数据结构的关系216
5.2 数据层开发217
5.2.1 文件结构217
5.2.2 安装依赖217
5.2.3 主持人数据和参赛方数据218
5.2.4 赛事数据223
5.2.5 消息数据225
5.3 服务端基本架构开发227
5.3.1 安装依赖227
5.3.2 程序入口229
5.3.3 路由表229
5.4 API开发230
5.4.1 API安全230
5.4.2 赛事API231
5.4.2.1 获取当前可用的所有赛事信息232
5.4.2.2 获取指定赛事数据232
5.4.2.3 创建新的赛
内容摘要
ES2015一直吸引着众多JavaScript开发者去积极尝试,如今,使用ES2015标准进行工程开发也己深入人心。随着工程师们对ES2015的热情曰益增长,许多新特性应运而出。由小问著的《实战ES2015(深入现代JavaScript应用开发前端撷英馆)》为读者介绍了ES2015的详细特性和意义,以及JavaScript在ES2015标准中的表现,同时向读者展示了利用ES2015中的新特性完成的JavaScrlpt应用开发实例,以实际案例说明利用ES2015的新特性如何提高JavaScript应用前端和后端的开发效率。
主编推荐
√ ES2015颠覆JavaScript格局,部专著诚意满满,既倡导工程化思想,更不乏解决问题的务实。
√ 现代前端开发以产品为目标,追求代码可读性、灵活性和可维护性,学习ES新标意义正在于此。
√ 作者多年精研技术,得到业界广泛认可,本书由贺师俊(hax)审校,程劭非(Winter)等撰文。
√ 语言精练,细节扎实,背景与原理描述丰富,更面向ES5→ES6人群设置完整案例,极利于动手学习。
精彩内容
JavaScript在ES2015标准中的表现,以及利用ES2015中新特性在JavaScript应用开发中的实践。以清晰的思路说明ES2015的详细特性和意义,并以实际案例展示利用ES2015中的特性如何提高JavaScript应用的前端和后端的开发速度和工程化模式。
媒体评论
有幸作为早期预览者见证了这本书逐渐成长,看到作者以严谨的态度在写这本书。ES2015 对 JavaScript 来说是个质变,它在工程上有很高的价值,能够尽快学习和应用 ES2015,可以帮助技术团队解决很多问题,也许会成为一些团队开始重视工程的契机。
——程邵非(winter) *技术专家
现代编程语言的发展,一小部分原因是程序设计语言理论本身的发展,更大一部分原因是用户(开发者)希望使用更加方便和自然的方式组织抽象代码。因为这么做能显著改善代码可读性、灵活性和可维护性,从而改善产品的质量。这就是我们要随着现代编程语言特性的发展而持续学习的目的所在,也是本书介绍 ES2015 是什么、如何用的意义所在。阅读本书,对现代前端开发者写更好的代码有帮助。 —— 360 奇舞团团长 月影
这本书是小问这些年来对于 JavaScript 技术的总结,同时也是一个展望。相信读者朋友阅读以后会收获满满,对自己的技术成长有更清晰的理解。在此本书给各位 JavaScript、Web、Nodejs 或相关技术的开发者,以及对于相关技术感兴趣的朋友们。
—— 尼奥 LeanCloud 前端技术负责人
这本书用简洁有力的表述方式,为大家掀开了 ES2015 神秘的面纱。通过对比其他语言以及介绍语言能力扩展的背景,深入浅出地介绍了 ES2015 的每一个细节知识点。从 ES5 熟练切换到 ES6 需要一定量的实践,而本书的后两章为读者了两个完整的案例,建议你跟着动动手。我相信,这本书会带着你徜徉在新知识的魅力海洋中。
—— 李靖 *网前端工程师
— 没有更多了 —
以下为对购买帮助不大的评价